Продолжение темы Foundation, в которой рассмотрен вопрос создания группы кнопок (button group) и панели кнопок (button bar).
В предыдущем обзоре я с вами научился создавать кнопки на Foundation - “Foundation - создаем кнопки”. В этом обзоре мы научимся создавать группы кнопок (button group) - несколько кнопок, объединенных в группу. Такие кнопки могут применяться на странице для самых различных целей.
Группы кнопок (button group) на Foundation
С точки зрения HTML струкрута такой группы представляет из себя обычный маркированный список с вложенными ссылками. Все дело в CSS-классах фреймворка Foundation, которые применяются к этому списку. Ссылку мы создаем с помощью класса
1
.button
, как и в предыдущей статье. А для элемента
1
ul
мы присваиваем класс
1
.button-group
:
В результате получаем группу с набором кнопок внутри:
Видоизменение группы кнопок (button group) на Foundation
Созданную таким образом группу кнопок можно видоизменять с помощью дополнительных классов, как это делалось ранее. К примеру создадим две группы кнопок и применим к ним дополнительные классы.
1
.radius
,
1
.round
,
1
.alert
,
1
.secondary
,
1
.success
Кстати, дополнительные классы можно применять не только к элементам
1
a
, но и к элементу
1
ul
:
Результат будет что-то в виде цветов итальянского флага:
Панели кнопок (button bar) на Foundation
Группы кнопок, в свою очередь, можно объединять между собой, создавая панели кнопок (button bar). Для этой цели применяется элемент
1
div
в классом
1
.button-bar
:
Результат будет примерно таким:
Видоизменение панели кнопок (button bar) на Foundation
Точно также, как и группу кнопок с классом
1
.button-group
, панель кнопок
1
.button-bar
можно видоизменять с помощью все тех же дополнительных классов, как показано на примере выше.
Создание button group и button bar c помощью Sass
Ну и по становящейся уже традиции переходим к вопросу создания панели кнопок (button bar) на Foundation c помощью Sass. Для этой цели служат два миксина:
1
button-group-container
1
button-group-style
Создаю HTML-разметку с произвольным именем класса
1
.horizontal
:
В файле
1
app.scss
прописываю для него следующие правила:
Результат получается таким:
У миксинов
1
button-group-container
и
1
button-group-style
имеются дополнительные параметры для тонкой настройки. Пример использования данных параметров показан на странице официальной документации - Button groups.
Редактирование файла app.scss
До этого момента так и не удосужился рассмотреть вопрос редактирования файла
1
app.scss
. Точнее, я уже упоминал о нем в начале обзора Foundation как о пользовательской таблице стилей, куда можно и нужно писать свои собственные CSS-правила. Вот теперь решил, что как раз настало время исправить свой недочет.
В начале файла
1
app.scss
имеются две строки:
Назначение их должно быть понятно:
строка
1
@import "settings";
импортирует Sass-переменные и их значения в проект
строка
1
@import "foundation";
импортирует сам фреймворк Foundation в проект
Однако, по аналогии с библиотекой Compass под препроцесор Sass, фреймворк Foundation позволяет выборочно импортировать в проект те свои возможности, которые необходимы на данный момент. Все эти возможности оформлены в виде отдельных модулей и прописаны каждый в отдельной строке файла
1
app.scss
в виде длинного закоментированного списка:
Допустим, на данный момент нам необходим модуль фреймворка Foundation для создания групп (button group) и панелей (button bar) кнопок. Такой модуль располагается в строке (легко найти по названию!):
И чтобы подключить только его, нужно выключить весь фреймворк Foundation целиком - закоментировать строку:
и раскомментировать нижележащие строки следующим образом (только не забыть заменить запятую на точку с запятой в конце):
Вуаля! Все работает и не нужно “тащить” за собой целый воз плюшек, которые не нужны на данный момент.
Начинаем изучение фреймворка Foundation. Этот фреймворк входит в двойку самых популярных и распространенных CSS-фреймворков на момент написания статьи (еще один - Twitter Bootstrap).
Можно по разному относиться к фреймворкам - любить их или не любить. Однако, они есть и ими пользуются при создании сайтов. Данный факт говорит о том, что фреймворки - это все-таки не такое уж и Зло. Скорее всего, нужно выработать для себя такое отношение к фреймворкам, что это быстрый способ создать что-либо непритязательное - не слишком оригинальное по дизайну, со стандартизированными элементами и не слишком оптимизированным кодом (читай - с большой долей мусора). А вот если к шаблону предъявляются повышенные требования, вот тогда нужно писать весь код вручную.
Но, как говорилось уже выше, фреймворки - они есть, и факт их существования говорит сам за себя. А поэтому, любой профессиональный веб-разработчик обязан знать и уметь работать с ними. В этой статье будет положено начало посильного знакомства с одним из двух популярных фреймворков - ZURB Foundation.
Сайт проекта Foundation
Официальный сайт проекта находится по этому адресу - Foundation. Если внимательно присмотреться, то можно заметить, что на странице проекта и в других местах часто мелькает слово ZURB - это название дизайнерской фирмы, которая и создала фреймворк.
Если бегло пробежаться по документации, то можно увидеть множество “плюшек” у данного фреймворка:
фирменную консольную утилитку foundation для разворачивания или обновления проекта на Foundation
Естественно, Foundation заявляется как полностью адаптивный фреймворк, нацеленный прежде всего на создание мобильных версий сайтов (Mobile First).
Способы установки Foundation
Как говориться на странице документации, существует три способа установки фреймворка на локальном компьютере:
Getting Started With Foundation CSS - самый простой и быстрый способ установки и начала работы. Нужно просто скачать и распаковать архив с готовым фреймворком
Getting Started With Sass - разворачивание фреймворка c поддержкой Sass/Compass. Установка на локальный компьютер производится автоматически, с помощью уже упоминавшейся консольной утилиты foundation
Applications - это что-то связано с разработкой приложений под Foundation. В общем, для front-end это не интересно
В дальнейшей статье приступим в установке Foundation вторым способом, так как мы уже хорошо знаем и умеем пользоваться препроцессором Sass и его библиотекой Compass.
Установка Foundation c поддержкой Sass
Для установки фреймворка на локальный компьютер с поддержкой Sass/Compass потребуется предварительное начилие на нем таких программных продуктов, как:
Git - нужен для работы Bower
Ruby - нужен для работы Sass/Compass
Nodejs - нужен для работы Grunt
Foundation версии 5 использует для установки своих компонентов, а также для обновления себя самого в целом менеджер пакетов Bower, поэтому его наличие также жизненно необходимо в системе. Помимо этого, фреймворк может работать совместно с менеджером задач Grunt для конкатенации файлов; но наличие Grunt не является обязательным.
Проверяю наличие трех вышеназванных пакетов в своей системе Linux Mint 17. Все три пакета были установлены мною гораздо раньше. Как выполнить установку Git, Ruby, Nodejs, Grunt и Bower под Linux Mint 17, можно почитать в этой статье - “Установка Node.js, npm и Bower под Linux Mint”:
Установка Bower и Grunt, если они еще не были инсталлированы в системе, производится простой командой:
Все готово для установки консольной утилиты
1
foundation
. Вы спросите - что это еще за утилита такая и зачем она нужна? Все просто - это фирменная утилитка от Foundation и ее задача - автоматизированное разворачивание готового проекта на локальной машине.
Устанавливаем утилиту foundation:
Сама утилитка foundation очень проста. Вызову команду
1
help
и все станет понятно без слов:
Разворачивание Foundation c поддержкой Compass
C помощью утилиты foundation можно развернуть на локальной машине фреймворк c поддержкой:
Grunt и Libsass
Compass
Я воспользуюсь вторым вариантом и запущу установку Foundation c поддержкой Compass. Для этого нужно выполнить команду:
В моем случае имя нового проекта было оригинальным - foundation )) Пару секунд ожидания и я получаю папку с таким содержимым:
Видим здесь файлы
1
config.rb
,
1
bower.json
,
1
index.html
; папки
1
bower_components
,
1
js
,
1
scss
. Другими словами - это готовый проект!
Немного подредактирую файл
1
config.rb
и запускаю Compass на мониторинг изменений в текущем проекте:
Проект готов для работы! В следующем обзоре будет рассмотрен самый простой пример работы с данным фреймворком - я с вами научусь создавать кнопки на Foundation.
Продолжение обзора фреймворка Foundation, в котором приступим к практической части и научимся создавать кнопки на этом фреймворке.
Почему сразу такой быстрый переход к практике? Я сам всегда так учился всему и считаю, что это наилучший способ научиться что-либо делать. Нежели долго и нудно жевать сопли теории, чтобы когда-нибудь перейти к практике. Остальные основы Foundation я буду изучать с вами в дальнейшем, шаг за шагом.
Итак, в [первой части знакомства с Foundation][1] я с вами установил фреймворк Foundation c поддержкой Sass/Compass под операционной системой Linux Mint 17 и подготовил его к работе. Давайте откроем созданный утилитой foundation индексный файл index.html и рассмотрим его содержимое. “Шапка”
1
head
этого HTML-документа не представляет из себя что-то особенное, кроме двух строк:
В первой строке производится подключение файла CSS-стилей
1
app.css
, который служит для создания пользовательских CSS-правил. Другими словами, фреймворк Foundation представляет из себя набор готовых CSS-стилей (на то он и фреймворк). Но не всегда готовые CSS-стили отвечают конкретным требованиям дизайна страницы. Чтобы изменить или переопределить готовые CSS-стили фреймворка Foundation, служит таблица стилей
1
app.css
- именно туда нужно вносить свои собственные CSS-правила.
Вторая строка - это подключение библиотеки Modernizr и больше тут сказать нечего.
Если заглянуть в самый конец HTML-документа, то увидим три строки подключения js-скриптов перед закрывающим тегом
1
</body>
:
Ситуация здесь почти такая же, как и с “шапкой” head документа. Подключается библиотека jQuery (куда же без нее?), коллекция готовых js-скриптов от Foundation
1
foundation.min.js
для создания разнообразных меню, табов и тому подобное. Скрипт
1
app.js
служит для тех же целей, что и таблица стилей
1
app.css
- для внесения пользовательских изменений.
Между тегами
1
<body></body>
размещено содержимое документа в виде CSS-сетки Grid, к которой я вернусь немного позже. Сейчас я произвожу очистку этого содержимого, чтобы писать в нем свой собственный HTML-код.
Кнопки на Foundation
Создание кнопок на фреймворке Foundation занятие малоутомительное. Для этой цели используется тег
1
a
, которому присваивается имя готового CSS-класса
1
.button
. Помимо этого, имеются три или четыре группы классов, с помощью которых можно создавать различные варианты кнопок - разного цвета, формы и назначения.
Кнопки, созданные на Foundation c помощью предопределенных классов, имеют полностью готовый вид, вплоть до CSS-свойства transition.
Обычная кнопка на Foundation
Как я уже упоминал выше, для создания кнопки под Foundation достаточно присвоить тегу
1
a
имя готового класса
1
.button
. Давайте так и сделаем:
Все очень просто. Готовый результат можно посмотреть в браузере. Я же перейду к более интересному вопросу создания различных модификаций (вариантов) стандартной кнопки
1
.button
.
Кнопки разных размеров
Начнем с группы классов, служащих для создания кнопок различных размеров. В этой группе имеются четыре класса для создания четырех размеров кнопок:
1
.tiny
- крошечная кнопка
1
.small
- маленькая кнопка
1
.medium
- средняя кнопка
1
.large
- большая кнопка
В качестве примера приведу ниже HTML-код создания таких кнопок:
Как видно из приведенного выше кода, используется мультиклассовость - добавление к классу
1
.button
любого из классов размера кнопки -
1
.tiny
,
1
.small
,
1
.medium
,
1
.large
. Смешение CSS-правил обоих классов дает в результате нужный вид кнопки. Впрочем, все это должно быть известно из основ CSS.
Скругленные кнопки на Foundation
В фреймворке имеются два готовых класса для создания скругленной формы у кнопки. Первый класс -
1
.radius
задает радиус скругления углов у кнопки. Второй радиус
1
.round
создает круглую кнопку.
1
.radius
- радиус ускругления углов у кнопки
1
.round
- круглая кнопка
HTML-код создания таких кнопок показан ниже:
Информационные кнопки на Foundation
Не знаю, точно ли такое название отражает предназначение подобных кнопок, но на другом фреймворке - Twitter Bootstrap как имеется такое название для этих кнопок, поэтому решил и в Foundation назвать их также.
1
.secondary
- обычная кнопка
1
.success
- кнопка, информирующая об успешном выполнении задачи
1
.alert
- кнопка предупреждения о чем-либо
HTML-код для создания информационных кнопок:
Другие варианты кнопок
Есть еще два класса для создания двух состояний кнопки. Первый класс
1
.disabled
делает кнопку неактивной с помощью CSS-свойства
1
cursor: default;
. Второй класс
1
.expand
заставляет кнопку занимать всю ширину блока-родителя и становиться просто огромной!
1
.disabled
- кнопка делается неактивной
1
.expand
- кнопка на всю ширину блока-родителя
HTML-код двух описанных выше кнопок:
Тонкая настройка кнопок в Foundation
Помимо возможности использования готовых классов с предустановленными CSS-значениями, в фреймворке Foundation можно изменять значения по умолчанию из готового файла настроек. Данный файл называется
1
_settings.scss
и располагается в папке scss.
В этом файле собраны настройки в виде переменных Sass для всех компонентов фреймворка Foundation, но в данном случае нам необходимы переменные, отвечающие за настройку кнопок. Данные переменные находятся в секции файла, начинающейся со строки
1
BUTTONS
:
В принципе, элементарных знаний CSS должно быть достаточно, чтобы понять предназначение всех этих переменных. Поэтому давайте ради примера выполним пару изменений, чтобы увидеть результат. Для этого находим в файле
1
_settings.scss
строку
1
BUTTONS
(за поиск в Sublime Text отвечает сочетание клавиш Ctrl+F) и раскомментируем строки с теми переменными, которые нам необходимы.
Пусть это будут строки:
… в которых изменим значение переменных по умолчанию на:
Если теперь заглянуть в инспектор свойств Firebug, то увидим, что padding для кнопки с классом
1
.tiny
увеличился; а также изменился цвет шрифта надписи с белого
1
#fff
на серый
1
#ddd
.
Создание кнопок с помощью Sass
Рассмотренный выше способ редактирования значений переменных для тонкой настройки кнопок хорош. Но все-таки он утомителен и времязатратен - это нужно открыть файл
1
_settings.scss
, найти в нем Sass-переменные, раскомментировать их и изменить их значение.
Фреймворк Foundation имеет в своем арсенале еще один способ использования готовых CSS-классов и тонкой настройки Sass-переменных. Преимущество этого способа еще в том, что он по настоящему семантичен и позволяет не загромождать HTML-разметку чрезмерным количеством CSS-классов. Короче - этот способ использует Sass-миксины для подключения CSS-классов и изменения значений Sass-переменных.
Допустим, в нашей HTML-разметке имеется ссылка:
Чтобы превратить ее в кнопку на Foundation, нужно в файле
1
app.css
прописать следующее:
В результате получим готовую кнопку! Чтобы иметь более тонкую настройку при создании кнопки, нужно передать миксину button переменные в качестве аргументов:
Обзор слайдера Elastislide типа Carousel, созданного под библиотеку jQuery.
Слайдер адаптивный, меняет свои размеры в зависимости от размера окна браузера. В качестве элементов управления применяются только кнопки перемотки вперед и назад. Кнопки генерируются скриптом Elastislide автоматически. Кроме этого, никаких других элементов управления не имеет.
Подключение скрипта Elastislide
Для подключения скрипта к проекту необходимо выполнить несколько шагов. Первое, нужно создать HTML-разметку:
Обязательное условие - нужно применить к списку идентификатор (с произвольным именем) и класс
1
elastislide-list
, на который будут “вешаться” CSS-стили. А так видим, что HTML-разметка минималистская, все отлично.
Распаковываем архив и видим несколько папок и четыре HTML-файла с примерами работы слайдера Elastislide. Можно полюбоваться, какую красоту создает скрипт Elastislide.
Из распакованного архива потребуются не все файлы, а только некоторые из них.
Подключаем JS-файлы
Из папки JS распакованного архива забираем все три js-файла и подключаем их следующим образом:
файл
1
modernizr.custom.17475.js
подключаем в head HTML-документа:
файлы
1
jquery.elastislide.js
,
1
jquerypp.custom.js
,
1
jquery-1.8.2.min.js
подключаем в теле HTML-документа, перед закрывающим тегом
1
</body>
:
Конечно, библиотеку jQuery можно подключать не локально, а через любой из CDN’ов - это кому как нравиться. На оф. сайте в качестве примера так и делается. jQuery используется версии 1.8.2 - я ее тоже использовал; более поздние версии не проверял на работоспособность с Elastislide.
там же создаем еще один js-файл, в котором инициализируем скрипт Elastislide и пропишем настройки для него (если они понадобятся):
Подключение CSS-стилей
Остался еще один файл, который нужно подключить в проект - это готовые CSS-стили “от автора”, чтобы слайдер Elastislide заработал. Забираем из папки CSS распакованного архива CSS-файл
1
elastislide.css
и подключаем его в head HTML-документа:
Остальные два файла
1
custom.css
и
1
demo.css
в папке CSS нам не нужны - они созданы автором скрипта для презентационных целей в примерах.
Итоговая картина подключения JS-скриптов, CSS-файла и HTML-разметки будет выглядеть следующим образом:
Как результат успешного подключения всех файлов смотрим на картинку:
Дальше уже можно смело редактировать файл
1
elastislide.css
для того, чтобы “подогнать” его под текущий дизайн страницы.
Данная статья посвящена обзору еще одного js-плагина для создания
1
slideshow
из картинок - jCarousel.
Автором данного скрипта является Jan Sorgalla. Хотя мне эти имя и фамилия ни о чем не говорит, но они запоминающиеся. Название данного плагина я запомнил по имени его автора раньше, чем по имени самого скрипта.
Скрипт jCarousel по популярности в списке плагинов типа
1
carousel
занимает второе место после скрипта slick - jQuery Plugins. Кто вдруг не знает, термин
1
carousel
(карусель) является общим описанием плагинов и скриптов подобного типа.
Плагин jCarousel основан на библиотеке jQuery и предоставляет стандартные возможности управления показом картинок - кнопки перемотки взад-вперед и пагинация картинок. Показ заголовка картинки не предусмотрен, но имеется возможность автоскроллинга изображений.
Особенности jCarousel
Первая особенность плагина заключается в том, что здесь почти ничего не генерируется автоматически, самим скриптом jCarousel. Только пагинация создается с помощью js-кода, все остальное нужно прописывать вручную в HTML-коде. Для меня это было весьма огорчительно, так как такой подход занимает много времени и сил.
Вторая особенность плагина - он имеет модульную структуру. То есть, имеется основная составляющая скрипта jCarousel -
1
jquery.jcarousel-core.min.js
, которая на то и является основной, что предоставляет базовые возможности для создания слайдшоу.
Если необходимо к слайдшоу добавить возможность прокрутки, то нужно скачать и подключить модуль
1
jquery.jcarousel-control.min.js
. Для включения возможности пагинации необходим еще один модуль -
1
jquery.jcarousel-pagination.min.js
.
Для автоскролинга потребуется модуль
1
jquery.jcarousel-autoscroll.min.js
.
В проекте перечисленные выше модули подключаются последовательно, в таком порядке (первые два пункта строго обязательны, остальные могут добавляться, убираться и перемещаться между собой произвольно):
библиотека jQuery -
1
jquery-1.11.1.min.js
основной модуль jCarousel Core -
1
jquery.jcarousel-core.min.js
модуль прокрутки -
1
jquery.jcarousel-control.min.js
модуль пагинации -
1
jquery.jcarousel-pagination.min.js
модуль автоскроллинга -
1
jquery.jcarousel-autoscroll.min.js
Справедливости стоит сказать, что можно не заморачиваться с отдельными модулями и подключить все одним файлом, по типу “все включено” -
1
jquery.jcarousel.min.js
:
библиотека jQuery -
1
jquery-1.11.1.min.js
плагин jCarousel со всеми его возможностями -
1
jquery.jcarousel.min.js
Страница для скачивания плагина jCarousel одним файлом (Full Download) или отдельными его модулями (Separate Downloads) расположена здесь - jCarousel Dist. Можно получить как “Production Version” (compressed), так и “Development Version” (uncompressed).
В данной статье будут использоваться сжатые версии скрипта, так как в исходном коде плагина копаться не будем.
Плагин требует для своей работы библиотеку jQuery версии не ниже 1.7 - это также стоит учесть.
Подключение плагина jCarousel
Создаем набросок HTML-страницы и производим подключение плагина jCarousel. Для чистоты и наглядности буду применять подход модульности плагина. Как и любой другой плагин подобного рода, его управление производится через отдельный js-файл произвольного имени, в котором прописываются параметры скрипта. Я создал для этой цели js-файл
1
simple.js
и выполнил подключение таким образом:
Шкурка
1
style.css
служит для стилизации слайдера jCarousel на HTML-странице, то есть в этом файле будут писаться CSS-стили для всех элементов слайдера jCarousel.
Базовая разметка слайдера jCarousel
Плагин для своей работы требует некоторую обязательную базовую HTML-разметку и CSS-стили к ней. HTML-разметка может быть не обязательно именно такой, как представлена ниже, но основная ее структура должна сохраняться:
То есть, должен присутствовать блок-обертка с классом
1
class="jcarousel"
(имя класса может быть произвольным), внутри которого должен находиться еще один блок-обертка. И затем только идут элементы с картинками. HTML-структура, надо сказать, несколько громоздкая по стандартам сегодняшнего времени.
К обязательной базовой HTML-разметке “прилагаются” не менее обязательные CSS-стили:
Код выше - это конечно не совсем CSS-код. Это SCSS, но наглядность (как мне кажется) от этого только выигрывает из-за ярко выраженного nesting, присущего Sass. По крайней мере, ничего не стоит за 5-10 секунд вручную перевести этот SCSS в обычный CSS, если кого вдруг это не устраивает.
В данном примере я воспользовался сервисом Placehold.it для быстрой и удобной генерации картинок в создаваемом слайдшоу.
Для активации слайдера в файле настроек
1
simple.js
скрипта jCarousel нужно прописать его инициализацию:
Слайдер уже готов! Правда, увидеть его работу не получиться, так как не заданы настройки скрипта, не созданы элементы для его управления. Приступим к созданию элементов управления слайдера jCarousel.
Создание кнопок прокрутки в jCarousel
Как я уже упоминал ранее, при создании слайдера придется все создавать вручную, прописывая нужные HTML-элементы внутри HTML-документа.
Какой уважающий себя слайдер картинок может существовать без кнопок перемотки изображений взад-вперед? Конечно - никакой! Поэтому потребуется их создать.
Для этого ниже блока со слайдером дописываю две ссылки с классами
1
class="jcarousel-prev"
и
1
class="jcarousel-prev"
:
Блок слайдера, элементы прокрутки (и другие будущие элементы управления слайдером) я поместил внутрь одного общего блока-обертки
1
class="wrap_jcarousel"
, которому придал несложные CSS-стили:
Кнопки перемотки внутри HTML-разметки созданы, однако необходимо прикрутить к ним действия с помощью js-скрипта. Для этого сначала подключаю модуль прокрутки
1
jquery.jcarousel-control.min.js
в HTML-документе:
… а затем в файле настроек
1
simple.js
активирую возможность прокрутки слайдера, добавив базовые js-строки:
После стилизации элементов управления и блока-обертки
1
class="wrap_jcarousel"
слайдер jCarousel может принять следующий вид:
Попробуем прокрутить картинки взад и вперед с помощью кнопок - все работает!
Добавление пагинации в jCarousel
Для добавления пагинации в слайдере нужно создать в HTML-разметке дополнительный блок с классом
1
class="jcarousel-pagination"
:
Больше ничего в него добавлять не нужно - плагин сам сгенерирует его содержимое. Нам только необходимо подключить соответствующий модуль
1
jquery.jcarousel-pagination.min.js
для пагинации в слайдере:
… а затем активировать его в файле настроек
1
simple.js
:
Для стилизации пагинации с данном случае потребуется плагин Firebug под Mozilla Firefox для инспекции генерируемых скриптом jCarousel элементов. Примерный вид слайдера после применения некоторых CSS-стилей может быть таким:
Проверим работу пагинации и “пощелкаем” на кнопках с циферками - все работает!
Добавление автопрокрутки в jCarousel
Для автоматической прокрутки изображений в слайдере достаточно выполнить два несложных действия, которые выполнялись и ранее.
Первое - подключить модуль автопрокрутки
1
jquery.jcarousel-autoscroll.min.js
:
Второе - активировать автопрокрутку в файле настроек
1
simple.js
:
Перезапускаю браузер, в котором открыт создаваемый мною слайдер и любуюсь результатом.
Дополнительные украшательства для jCarousel
Что еще можно сделать для созданного слайдера jCarousel? Можно добавить стили для неактивной кнопки прокрутки изображений и для активной кнопки пагинации. Активность и неактивность этих кнопок можно отслеживать в помощью js-строк и “вешать” на нужные состояния кнопок соответствующие CSS-классы.
Для этого файл
1
simple.js
преобразую таким образом:
… а в
1
style.scss
добавлю строки:
Теперь при автоматической прокрутке изображений активная кнопка пагинации будет выделяться цветом. А при достижении конца прокрутки кнопка прокрутки становится неактивной, что визуально отмечается изменением вида курсора мыши при его наведении на кнопку.
Заключение jCarousel
В заключение можно сказать, что на странице примеров Examples есть богатый материал для дополнительных экспериментов. В частности, интерес представляет адаптивная Responsive Carousel, которая изменяет количество картинок внутри блока в зависимости от ширины окна браузера.
Полный код рассмотренного в данной статье примера создания слайдера приведен ниже.