Если Вам нужен качественный хостинг и Вы непротив сэкономить 10% на его покупке, то Вы можете воспользоваться моим специальным предложением по скидке на хостинг от компании Ютекс.

*


Система Orphus


Выезжающее меню с помощью jQuery

В этом уроке мы создадим уникальное выезжающее меню с помощью jQuery.

Это большое меню будет содержать название и описание каждого элемента меню. Оно будет выезжать снизу, показывая при этом иконку и текст описания. Мы будем использовать CSS3 свойства для красивых эффектов тени и jQuery для интерактивности.

Иконки для меню взяты из набора Luna Grey - http://dryicons.com/free-icons/preview/luna-grey-icons/

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

Давайте приступим...

Разметка

Меню будет находится внутри контейнера. Меню будет состоять из неупорядоченного списка с элементами ссылок внутри. Элементы ссылок будут содержать два span: один для названия, второй для описания. У нас также будет использован элемент "i" для иконки

<div class="container">
	<ul id="menu">
		<li>
			<a>
				<i class="icon_about"></i>
				<span class="title">About</span>
				<span class="description">
					Learn about us and our services
				</span>
			</a>
		</li>
		 <li>
			<a>
				<i class="icon_work"></i>
				<span class="title">Work</span>
				<span class="description">
					See our work and portfolio
				</span>
			</a>
		</li>
		<li>
			<a>
				<i class="icon_help"></i>
				<span class="title">Help</span>
				<span class="description">
					Talk to our support
				</span>
			</a>
		</li>
		 <li>
			<a>
				<i class="icon_search"></i>
				<span class="title">Search</span>
				<span class="description">
					Search our website
				</span>
			</a>
		</li>
	</ul>
</div>

Не забудьте исправить ссылки на свои.

CSS

Давайте начнем с стилей окружающего контейнера. Контейнер будет иметь относительное положение, так как само меню - абсолютное. Нам необходимо будет спрятать часть с описанием с помощью overflow:hidden.

.container{
    width:900px;
    height:130px;
    margin:0 auto;
    position:relative;
    overflow:hidden;
    border:3px solid #fff;
	background-color:#fff;
    -moz-box-shadow:1px 1px 6px #000;
    -webkit-box-shadow:1px 1px 6px #000;
    -moz-border-radius:0px 0px 20px 20px;
    -webkit-border-bottom-left-radius:20px;
    -webkit-border-bottom-right-radius:20px;
    border-radius:0px 0px 20px 20px;
}

Мы создаем красивые тени и закругленные углы с помощью CSS3 свойств. Помните, что они будут работать только в современных браузерах. Список будет иметь следующие стили:

.container{
    width:900px;
    height:130px;
    margin:0 auto;
    position:relative;
    overflow:hidden;
    border:3px solid #fff;
	background-color:#fff;
    -moz-box-shadow:1px 1px 6px #000;
    -webkit-box-shadow:1px 1px 6px #000;
    -moz-border-radius:0px 0px 20px 20px;
    -webkit-border-bottom-left-radius:20px;
    -webkit-border-bottom-right-radius:20px;
    border-radius:0px 0px 20px 20px;
}

Как Вы можете увидеть, мы прячем элемент нажатия на ссылку практически полностью. Мы делаем это с помощью отрицательно bottom позиции. Можете поиграть с этим значением и немного видоизменить меню.

Теперь давайте взглянем на классы для иконок:

.icon_about,
.icon_work,
.icon_help,
.icon_search{
    width:64px;
    height:64px;
    display:block;
    left:140px;
    top:50px;
    position:absolute;
}
.icon_about{
    background:transparent url(../images/id_card.png) no-repeat top left;
}
.icon_work{
    background:transparent url(../images/globe.png) no-repeat top left;
}
.icon_help{
    background:transparent url(../images/help.png) no-repeat top left;
}
.icon_search{
    background:transparent url(../images/find.png) no-repeat top left;
}

CSS для названия и описания имеют такой вид

ul#menu span.title{
    display:block;
    height:26px;
    text-shadow:1px 1px 1px #000;
    color:#B7B7B6;
    text-indent:10px;
}
ul#menu span.description{
    width:140px;
    height:80px;
    background-color:#B7B7B6;
    border:3px solid #fff;
    color:#fff;
    display:block;
    font-size:24px;
    padding:10px;
    -moz-box-shadow:1px 1px 6px #000;
    -webkit-box-shadow:1px 1px 6px #000;
    box-shadow:1px 1px 6px #000;
    -moz-border-radius:10px;
    -webkit-border-radius:10px;
    border-radius:10px;
}

Мы также хотим, чтобы 2 span меняли цвет фона и текста, так что мы также определим классы для ссылок при наведении

ul#menu a:hover span.description{
    background-color:#54504F;
}
ul#menu a:hover span.title{
    color:#54504F;
}

Вот со стилями и покончено. Давайте добавим немного красивых эффектов с помощью jQuery.

Javascript

Код Javascript будет очень простым, так как мы делаем только две вещи: выезжают элемент ссылки и иконка. Все происходит при наведении мышки.

$(function() {
    $('#menu > li').hover(
        function () {
            var $this = $(this);
            $('a',$this).stop(true,true).animate({
                    'bottom':'-15px'
                }, 300);
            $('i',$this).stop(true,true).animate({
                    'top':'-10px'
                }, 400);
        },
        function () {
            var $this = $(this);
            $('a',$this).stop(true,true).animate({
                    'bottom':'-95px'
                }, 300);
            $('i',$this).stop(true,true).animate({
                    'top':'50px'
                }, 400);
        }
    );
});

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

Вот и все готово! Вышло неплохо!

Данный урок подготовлен для Вас командой сайта http://ruseller.com
Источник урока: www.tympanus.net

*
* Рейтинг: 5
Урок создан: 12.3.2010   Просмотров: 24083   Правила перепечатки

Оценивать уроки могут только зарегистрированные пользователи

Если хотите не упустить данный урок, добавьте его в закладки

Пять последних добавленных уроков в рубрике jQuery:

*

»Моменты использования jQuery, в которых чаще всего путаются начинающие разработчики
Cкрипт, который находит все ссылки с определенным классом CSS в документе и привязывает к ним обработчик определенных событий, выполняется только в одну строчку кода, а не в 10. Для обеспечения таких функций jQuery приносит с собой часть собственного API, с функциями, методами, и синтаксическими конструкциями. Некоторые из них являются достаточно путанными или похожими на другие, но они все в действительности отличаются друг от друга. В данном уроке мы постараемся разъяснить несколько запутанных мест.


*

»Маленький плагин jQuery для автопрокрутки до верха страницы
В данном уроке рассмотрим плагин, который обеспечивает эффект элегантной прокрутки на верх страницы с помощью нескольких строк JavaScript.


*

»Как использовать виджет Autocomplete iQuery UI
В данном уроке мы рассмотрим один из новых компонентов jQuery UI 1.8 – виджет Autocomplete. Автозаполнение полей формы может быть очень полезной функцией для посетителей вашего сайта, так как она облегчает ввод информации. Такую функцию можно использовать, например, для поля, или при вводе страны, города, или чего либо подобного, что можно выбрать из общего списка. Виджет jQuery UI Autocomplete популярен у разработчиков, так как его легко использовать, он достаточно мощный и гибкий.


*

»Подсчет введеных символов с индикатором (jQuery)
В данном коротеньком уроке мы покажем как организовать подсчет введенных символов "на лету" с помощью jQuery. Это достаточно просто организовать с помощью нескольких строчек кода JavaScript. Такая функция, используемая на вашем сайте позволит улучшить интерфейс пользователя.



Зарегистрируйтесь, чтобы иметь возможность добавлять комментарии


Комментарии:

аватар
*

Автор: Roman (2010-07-22 19:26:21)

Здравствуйте, дорогие вебмастера, прошу помощи. Как такое меню можно установить на WordPress? Всем заранее спасибо!

аватар
*

Автор: Antoxa (2010-07-13 19:57:23)

Меню отпадное автору респект! Сайт супер! По рекламе кликал :) Если кому интересно вот это меню с небольшими доработками helpcompu.hut2.ru

аватар
*

Автор: Graf (2010-03-30 18:29:11)

Для Champ: /*Тег del — удаляет, а ins — вставляет. Неплохо вставляет. Только лично мне очень не по душе подчёркнутость на вебе, если это не ссылка. Вот здесь как раз и надо позаботиться с помощью CSS. Например, таким образом ins,a { font-style:italic; text-decoration:none; } */

аватар
*

Автор: Warfare (2010-03-27 19:06:04)

Норм ;D

аватар
*

Автор: Champ (2010-03-19 05:46:23)

как убрать подчеркивание(синее/фиолетовое) под текстом в меня после добавления ссылки (например, для перехода на About)?

аватар
*

Автор: Kolian (2010-03-13 17:44:52)

Stakan, в новой опере 10.5 проблем нету больше... Так что меню отличное, а браузер советую обновить))

аватар
*

Автор: Stakan (2010-03-12 23:36:49)

В опере кстати со стилями тоже не совсем то.. Но так вобще штука весёлая)

аватар
*

Автор: antosha (2010-03-12 21:16:03)

просто восхитительное меню

аватар
*

Автор: MrJenika (2010-03-12 19:12:27)

жалко в Ie квадратные уголки

аватар
*

Автор: angemax (2010-03-12 18:17:27)

А как такое меню сделать для Joomla?

аватар
*

Автор: papalev (2010-03-12 17:45:04)

Супер спс полезно

аватар
*

Автор: HunterNNm (2010-03-12 17:37:23)

маленький недостаток - подгружают малехо комп


поиск

Ваш поисковый запрос:

Если Вы давно мечтаете о создании собственного блога на движке Wordpress, то советую Вам обратить внимание на мой новый видеокурс "Wordpress - Профессиональный блог за один день". Это более 100 видеоуроков по всем аспектам создания и ведения своего блога на самом популярном движке в мире.

*
timeline таймлайн временная шкала скрипт библиотека событие куки mvc массив xsl сервисы база данных cookie баннер тень mysql html5 центрирование joomla sql курсор css3 закладки oop wordpress часы пароль баги чат звезды ускорение twitter google maps html 5 прозрачность ie6 png seo gd library cookies rss рейтинг цитаты блог комментарии theme тема генератор captcha cycle z index позиционирование загрузка кеширование бегущая строка тест домен советы текст видео регистрация текстуры radikal.ru фото favicon слайдшоу карта лента загрузка файлов голосование опрос поля формы api чарты диаграммы mod rewrite календарь спрайты текстовое поле константа include защита multiple select htaccess выпадающие списки миниатюры сообщения чекбоксы новостной блок вкладки выезжающая панель форма шпаргалка обзоры таблица анимация верстка wysiwyg wysiwig cms faq уголок разное ссылки редакторы email mootools списки юзабилити модальные окна плагины web дизайн счетчик аудио flash ajax слайдер окна javascript html кодинг оптимизация шаблоны формы кнопка меню изображения фон подсказки css контактная форма php ротатор галерея jquery

Меня часто спрашивают, как я раскручивал данный сайт?

Мой ответ таков. Для раскрутки данного сайта использовалась методика "Мастер план по раскрутке сайта", которая была предложена Юсуфом Губайдуллиным в начале 2009-го года.

*


Copyright © 2008 Евгений Попов.| Все права защищены. | Служба поддержки