Маркетер
  • Маркетинг
  • Digital
  • Реклама
  • Public Relations
  • Менеджмент
  • Новости
  • Маркетинг
  • Digital
  • Реклама
  • Public Relations
  • Менеджмент
  • Новости
YouTube 154 Подписчики
Telegram 241 Подписчики
VK 0 Подписчиков
Маркетер
Маркетер
  • Маркетинг
  • Digital
  • Реклама
  • Public Relations
  • Менеджмент
  • Новости
  • JQuery

Продолжаем изучать jQuery: работа с анимацией. Часть третья.

  • 26.09.2010

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

Как решить проблему помещения значительного количества контента на небольшой площади? Одним из способов выполнения такой задачи является так называемая «Гармошка». Она позволяет показать несколько заголовков, каждый из которых содержит параграфы.

Если бы они были отображены все вместе, то для того, чтобы найти определенное место, нужно было бы пролистывать мышкой много текста. А, использование «гармошки», позволяет нам видеть полностью всего один параграф, а остальной текст – в виде заголовков. Нажимая на заголовки, мы открываем необходимый текст.

Итак, написание примера, затем – его анимация. Так мы познакомимся с множеством функций jQuery, значительно облегчающих нашу жизнь.

Обозначаем объект – тот текст, который нужно сжать:

[sourcecode language=’xml’]

Item 1

Item 1 content

Item 2

Item 2 content

Item 3

Item 3 content

Item 4

Item 4 content

[/sourcecode]

Теперь немного CSS:

[sourcecode language=’css’]p,h3 {margin: 0; padding: 0;}
p {height: 150px; width: 200px; border: 1px solid black;}
h3 {height: 50px; width: 200px; background-color: blue; color: white; border: 1px solid black;}[/sourcecode]

Дальше дело за JavaScript. Подключаем jQuery из google CDN, добавляем собственные script-теги внизу страницы, и начинаем:

[sourcecode language=’jscript’]var headings = $(‘h3′);[/sourcecode]

Теперь нужно приобщить заголовки к движению. Сначала добавим событие click (клик мышкой):

[sourcecode language=’jscript’]headings.click(function() {

});[/sourcecode]

Прописываем код движения внутри

[sourcecode language=’jscript’]var cur = $(this); //сохраняем элемент, на который мы нажали (this) для более простой передачи
cur.siblings(‘p’).hide(); //все параграфы (помним функцию siblings) скроем (hide)
cur.next(‘p’).show(); //показывает следующий параграф, который идет после активного заголовка.[/sourcecode]

И разбиваем построчно

[sourcecode language=’jscript’]var cur = $(this);[/sourcecode]

Для обозначения элемента, с которым в данный момент происходит взаимодействие, используют this. Обращаясь к нему, осуществляем запись в качестве переменной cur.

В нашем примере нажимаем на заголовок heading.

[sourcecode language=’jscript’]cur.siblings(‘p’).hide();[/sourcecode]

Функция siblings адресована ко всем элементам, которые находятся на том же уровне, что и текущий. Теперь уточняем и скрываем с помощью функции hide те параграфы, которые находятся на том же уровне, что и заголовок.

[sourcecode language=’jscript’]cur.next(‘p’).show();[/sourcecode]

Функция next переводит к элементу, следующему за перепенной cur, то есть к параграфу, следующему после cur. Функция show позволяет его показать.

Следующие необходимые нам функции – slideUp() и slideDown(). С их помощью движение можно сделать скользящим.

С помощью click-функции пишем:

[sourcecode language=’jscript’]headings.click(function() {
var cur = $(this); //сохраняем элемент, на который мы нажали (this) для упрощенной передачи
cur.siblings(‘p’).hide(); //все параграфы (помним функцию siblings) скроем (hide)
cur.next(‘p’).show(); //показывает следующий параграф, который идет после активного заголовка.
})[/sourcecode]

Скрытие и открытие параграфа делаем более плавным: заменяем show() на slideDown() и hide() на slideUp():

[sourcecode language=’jscript’]headings.click(function() {
var cur = $(this); //сохраняем элемент, на который мы нажали (this) для упрощенной передачи
cur.siblings(‘p’).slideUp() //все параграфы (помним функцию siblings) скроем (hide)
cur.next(‘p’).slideDown(); //показывает следующий параграф, который идет после активного заголовка.
})[/sourcecode]

Правда, совсем не сложно?

Источник

tamo

Предыдущий материал
  • Примеры рекламы

Решить по мобильному извечные философские споры

  • 26.09.2010
  • jokar
Read More
Следующий материал
  • JQuery

Продолжаем изучать jQuery: часть вторая. Учимся выделять элементы.

  • 26.09.2010
  • tamo
Read More
Вас также может заинтересовать
Read More
  • JQuery

Хитрости JQuery

  • jokar
  • 23.05.2012
Read More
  • JQuery

Закруглить углы изображения при помощи JQuery

  • jokar
  • 21.05.2012
Read More
  • JQuery

Знакомьтесь: Nivo Slider от jQuery

  • tamo
  • 28.09.2010
Read More
  • JQuery

Первое знакомство с jQuery: часть первая.

  • tamo
  • 26.09.2010
Read More
  • JQuery

Продолжаем изучать jQuery: часть вторая. Учимся выделять элементы.

  • tamo
  • 26.09.2010
Read More
  • JQuery

Плагин AeroWindow для jQuery

  • jokar
  • 13.09.2010
Read More
  • JQuery

Симпатична скользящая форма на jQuery

  • jokar
  • 12.09.2010
Read More
  • JQuery

Inset Border Effect – jQuery бордер вокруг изображения

  • jokar
  • 12.09.2010

Добавить комментарий

Для отправки комментария вам необходимо авторизоваться.

Свежие посты
  • Дайджест постов Сергея Людкевича
    • 12.09.24
  • Как юристы тормозят бизнес
    • 30.08.24
  • Продвижение оптовых кампаний в Яндекс Директ
    • 06.03.24
  • Cарафанное радио
    • 13.01.24
  • 5-55: История компании
    • 01.03.23
Маркетер
  • О проекте
  • Информационное спонсорство
  • Рекламным агентствам
  • Ссылки
(с) ООО "Маркетер". Официальный сайт. Маркетер: Статьи про рекламу, маркетинг, public relations, интернет

Введите ключевые слова для поиска и нажмите Enter