admin / 07.12.2017
Содержание
Создать и добавить на сайт слайд-шоу обязательно должен уметь каждый веб-мастер. Использование слайдеров чрезвычайно популярно, и их можно встретить, практически, на любом современном ресурсе.
И это не случайно!
Если Вы были на странице «Анимация», то видели там работу GIF-анимации.
Здорово, конечно! И создаётся довольно просто — в фотошоп. Только у неё есть существенный недостаток, который очень ограничивает её применение на сайтах. Малоцветность.
Такого недостатка полностью лишено слайд-шоу!
Именно поэтому, для размещения на сайте различных многоцветных рисунков, фотографий, лучше всего воспользоваться не анимацией, а слайд-шоу.
Только в этом случае, применения столь любезных моему сердцу простых HTML+CSS, уже будет недостаточно. Нужно подключать скрипты … … !
Самое оптимальное решение — использовать jQuery.
На страницах БОЛЬШОГО СДВОЕННОГО раздела, посвящённого этой замечательной технологии: «jQuery», есть много примеров её использования. Не буду повторяться.
Здесь применил jQuery для создания слайд-шоу на своём сайте, или, так называемого, слайдера. Его работу Вы видите сейчас ниже, а под ним подробно написал, что делал для создания такого вида слайдера, и показал ещё 7(!) действующих слайдеров.
Как видите, этот слайдер работает исправно! Впрочем, и все остальные тоже. Можете сами убедиться. => смотреть сразу
**Примечание. В отличие от других страниц раздела jQuery, нужные скрипты прописал непосредственно в HTML-код самой этой страницы.
Кроме того, что очень важно(!), они работают у меня от другой версии jQuery, более поздней, чем использую здесь.
Если там использую версию jquery v.1.10.1.min, то здесь v.1.8.3.min
Однако, подробнее об этом и обо всём остальном, по-порядку — дальше.
Работа по созданию и установке слайд-шоу на сайте обычно состоит из 4-ёх основных этапов.
1. Подобрал фотографии. Главное — чтобы они были обязательно одного размера. Нужно их тщательно измерить.
В данном случае, взял готовые картинки из дополнительных материалов, приложенных к обучающему курсу. Какому? Об этом здесь: «Ссылки»(откроется в новом окне).
2. Нарисовал в фотошоп графическое изображение слайдера в стиле «телевизор». Пусть не оригинально, зато очень удобно.
Главное — размер просмотровой зоны нужен немного больше по ширине и высоте, чем у подготовленных рисунков.
Картинки прописываются в HTML-коде именно в то место, где они в дальнейшем будут выводиться. Срипты же, можно прописать потом в любое удобное место. Я обычно оставляю место для них сразу под рисунками. Структура логичнее.
Разместил сами изображения внутри тэга p, для которого установил в стилях CSS ширину и высоту, и указал его class=»slideshow». А сам абзац с ними поместил внутрь общего тэга div, на фон которого повесил подготовленное графическое изображение слайдера (телевизор*). Ему дал class=»slider_fon».
Причём, только для него, чтоб разгрузить страницу, подключил внешнюю таблицу стилей, а для рисунков всё делал внутри HTML-кода.
P.S.** Последнее действие вовсе НЕ обязательно. Просто, мне так удобнее. Структура страницы логичнее как-то выглядит.
В правилах CSS указал размер окна для изображений, которые потом будут появляться в слайдере (width — height). Естественно, у всех изображений должен быть одинаковый размер.
При желании, мог расширитьCSS-параметры, добавив, скажем, рамки, фон, отступы и прочие элементы. Однако, думаю, это уже было бы лишним.
Если же, всё-таки, Вам захочется так сделать, то, размеры указывайте ОБЩИЕ, то есть: изображение +ВСЕ установленные отступы и границы.
Рекомендую посетить справочную страницу, которую делал для себя во время изучения технологии jQuery. Очень поможет Вам разобраться.
Открыл к ней общий доступ: «ВЫБОРКА в jQuery»(откроется в новом окне).
* * *
Как всегда, сначала создал папку js на сайте. Затем скачал нужные скрипты для слайд-шоу (архив), и распаковал его в эту папку. В ней получилось два файла скриптов: ядро jquery-1.8.3.min.js и плагин jquery.cycle.all.min.js.
В неё же, на всякий случай, добавил и свой управляющий файл myscripts11.js. Однако, здесь он мне не пригодился для запуска и демонстрации слайд-шоу. Разве что, проверил им правильное подключение созданной папки.
Но … …, пусть будет. Мало ли, что в дальнейшем захочу сделать с размещёнными здесь слайдерами. Короче, «… наш бронепоезд всегда на запасном пути».
Дальше. Внутрь тэга <head> … </head> вставил строчки, где прописал пути к скриптам. У меня они: <script src=»https://steptosleep.ru/wp-content/uploads/2018/06/42885.jpg» type=»text/javascript»></script>, и к плагину: <script src=»https://steptosleep.ru/wp-content/uploads/2018/06/45786.jpg» type=»text/javascript»></script>.
Свой («запасной») управляющий файл закомментировал.
— и последнее —
Зашедшие на мой сайт с отключённым в браузере интерпретатором JavaScript, наблюдать слайд-шоу, разумеется, не смогут.
Они увидят рисунки так, как те прописаны в HTML-коде, т.е. в столбик, друг за другом.
Для них сделал строчку-предупреждение и вставил её в тэг <noscript> … <noscript>.
Ну вот! Слайд-шоу создано. Осталось настроить его параметры: скорость смены рисунков, способы их показа, и т.д..
Как уже писал выше, (в примечании**), нужные скрипты прописал непосредственно в HTML-код самой этой страницы.
В созданном у себя на сайте слайд-шоу, применил настройки «по умолчанию».
Вообще же, легко установить различные, интересные типы переходов между картинками, изменяя javascript, размещённый в теле страницы.
Скажем, изменив в скрипте строчку sync:false на sync:true, можно убрать пробел при смене изображений.
Важное замечание!
Разные версии jQuery могут конфликтовать друг с другом, если они на одной странице.
Обязательно(!) проверяйте работу плагинов с установленной версией jQuery, поскольку не все версии сочетаются!Пример**
На других страницах раздела jQuery, использующих библиотеку, установлена версия jquery v.1.10.1.min. Так вот, она более современная, чем v.1.8.3.min, от которой исправно(!) работают слайдеры слайд-шоу здесь.НО!!!
Плагин jquery.cycle.all.min.js с ней НЕ РАБОТАЕТ!!!
(проверено)
* * *
Впрочем, не огорчайтесь. Всё в Ваших руках!
В разделе моего сайта «Полезное»(откроется в новом окне) найдёте испытанный(!)полный комплект нужных скриптов для создания такого слайд-шоу на своём сайте. (Разумеется, БЕСПЛАТНО!)
* * *
Дальше сможете посмотреть работу ещё 7-ми слайдеров, которые решил разместить на этой же самой странице ниже.
Не буду в этом подразделе столь подробно описывать все действия по созданию слайд-шоу. В принципе, они абсолютно одинаковые.
Даже проще. Не нужно рисовать фоновую картинку слайдера в фотошоп. Даже отдельнаятаблица стилей CSS не понадобится.
Если хотите разместить различные варианты слайд-шоу на одной странице сайта, как я это сделал здесь (увидите ниже), указывайте разные классы для каждого варианта в строчке скрипта $(‘.slideshow‘).cycle({
P.S.* Не забудьте прописать в CSSразмеры окна для каждого класса, если, всё же, будете использовать таблицу стилей. Мне она не понадобилась.
Посмотрите сначала на неподвижные рисунки, которые, аналогично, взял из обучающего курса (Какого? Повторю ссылку: «Ссылки»), и разместил их здесь для сравнения.
Вот они. Будущие участники 7-ми слайд-шоу!
Смотрите их «выступление» ниже.
Покажу несколько популярных видов слайдеров. Вставил их, для удобства просмотра, в общую таблицу.
Слева — название эффекта и краткое пояснение, если нужно. Справа — пример.
* * *
Надеюсь, показанное «групповое» слайд-шоу Вам понравилось.
Действительно, удобно! «Танцуют» домики — каждый в своей ячейке, и никому не мешают. Не зря я им +5 за «выступление» поставил!
А серьёзно — такой способ создания слайд-шоу для сайта экономит огромное количество места на странице.
Поэтому, повторю сказанное в начале раздела.
Самое оптимальное решение для создания разных шоу на сайте — использовать jQuery.
Посмотреть практическое применение слайдеров для дизайна страниц ресурса, можете на специально созданном мною сайте-визитке «Личная страничка».
Можно ли сделать что-либо подобное БЕЗ подключения скриптов?
Конечно можно! Об этом читайте дальше.
Как создать простой слайдер на сайте, чтобы НЕ применять разные сложные и тяжёлые (по «весу») скрипты? Легко!
Не я был бы, если б не показал Вам такие интересные и простые способы!
Воспользуемся для этого базовыми технологиями интернета => HTML + CSS.
Базовые — означает такие, без которых интернет невозможен вообще, в принципе!
Впрочем, сначала посмотрите простые слайд-шоу, созданные только на языке HTML, без использования каких-либо скриптов.
Специально для этого сделал отдельную небольшую страницу.
После уже сами сможете решить, что больше подходит Вашему ресурсу.
Надеюсь, размещённая информация о том, как можно просто создать слайд-шоу для сайта, была Вам интересна.
Заодно, и для своего «Портфолио» разместил вполне достаточно материала по этой увлекательной теме.
Посетителям, кому нужно создать слайд-шоу, либо галерею на сайте, подключить аудио и видео к нёму, но нет времени самостоятельно заниматься этим, способен помочь раздел «Выбор исполнителя»(откроется в новом окне).
* * *
Сделал прямой заход на эту страницу из трёх БОЛЬШИХ разделов. Вернуться также можно прямо. Наведите курсор мыши на стрелки — появятся подсказки, куда они ведут.
Кликнув по верхнему логотипу, попадёте на «Главную».
ВВЕРХ
Простой, легкий (21Кб в сжатом виде) слайдер, написанный на чистом Javascript, не имеющий никаких зависимостей, т.е.
работает без jQuery.
Протестирован в следующих браузерах:
Есть неполная поддержа IE8/9 (нет эффектов).
GitHub | Демо
Перед закрывающимся тегом необходимо подключить slidr.js или slidr.min.js файл.
slidr.js может работать с любыми , , элементами, имеющими аттрибут . Допускается использовать любые дочерние элементы первого уровня с атрибутом , например:
После подключения slidr.js станет доступен глобальный объект . Самый простой способ создания :
Вызов с заданием всех настроек:
Все доступные настройки для slidr.js приведены в таблице ниже.
Параметр | Тип | По умолч. | Description |
---|---|---|---|
function | callback-функция после смены слайда | ||
function | callback-функция до смены слайда | ||
bool | false | Показать хлебные крошки для управления слайдами. или . | |
string | border | Расположение стрелок для управления слайдами. , or. | |
string | horizontal | Направление по умолчанию для новых слайдов. или , или . | |
bool | true | Включить эффект затемнения для смены слайдов (fade-in/out). или . | |
bool | false | Включить смену сладов с помощью клавиатуры. или . | |
bool | false | Включить overflow для блока со слайдером. или. | |
bool | false | Не менять слайды автоматически при наведении мыши (необходимо запустить auto()). или . | |
string | #fff | Цвет элементов управления слайдером (хлебных крошек и стрелок). или. | |
object | {} | Custom animation timings to apply. . | |
bool | false | Задействовать touch управление на мобильных устройствах. или. | |
string | linear | Эффект смены слайдов. , , или . |
Функции обратного вызова и получают следующие данные:
Глобальное пространство имен slidr предоставляет следующие функции:
Короткая запись
Полный список функци API Slidr.js представлен ниже
В некоторых браузерах появляется этот неприятный баг. Чтобы исправить его нужно добавить стиль к :
Slidr сам "понимает", нужно ли изменять размеры слайдера под изображение. Если у блока слайдера указаны размеры, то Slidr не будет автоматически их менять. Если указаны свойства min-width и min-height, то слайдер будет менять свой размер под контент, учитывая эти значения. В противном случае определение размеров будет проходить в автоматическом режиме.
Автоматическое изменение размеров
Статические размеры
Разметка элементов управления следующая:
Вы можете кастомизировать любой элемент управления слайдером с помощью CSS селекторов:
Элемент управления "стрелка" реализован с помощью псевдоселектора , поэтому, чтобы его скрыть, используйте следующий код:
Хлебные крошки имеют простую HTML разметку. Каждый обозначает всю строку, а каждый отдельную хлебную крошку:
Стилизация хлебных крошек с помощью CSS:
Это программное обеспечение может свободно использовать под лицензией MIT.
Теги: Javascript
Слайдер на чистом javascript
Стенограмма видео
Верстка:
<ul id=»slider»>
<li class=»slide active»>
<img src=»https://steptosleep.ru/wp-content/uploads/2018/06/26017.jpg»>
</li>
<li class=»slide»>
<img src=»https://steptosleep.ru/wp-content/uploads/2018/06/15403.jpg»>
</li>
<li class=»slide»>
<img src=»https://steptosleep.ru/wp-content/uploads/2018/06/26017.jpg»>
</li>
</ul>
<div class=»arrows»>
<span class=»arrow next» id=»next»>Вправо</span>
<span class=»arrow prew» id=»prew»>Влево</span>
</div>
Стили:
#slider {position: relative; overflow: hidden; width: 600px; height: 320px; margin: 20px auto; padding: 0; list-style: none;}
.slide {position: absolute; width: 100%; height: 100%; transition: all 1s ease-in 0.1s; left:0;}
.slide img {width: 100%;}
.arrows {position: relative; margin: 0 auto; width: 600px;}
.arrow {position: absolute; cursor: pointer;}
.no_active {color: red;}
.next {right: 0;}
Скрипт js:
var next = document.getElementById(‘next’);
var prew = document.getElementById(‘prew’);
var slides = document.getElementsByClassName(‘slide’);
for(var i=0; i
Возврат к списку
Территориально я нахожусь в Санкт-Петербурге, но могу и готова работать со всеми, вне зависимости от вашего местоположения.
Вы можете написать мне через форму обратной связи, либо связаться через социальные сети. Ознакомиться с портфолио можно здесь и здесь.
Приветствую вас дорогие друзья!
В этом небольшом уроке я покажу, как можно наиболее простым способом создать слайд-шоу!
Слайд-шоу – это галерея на javascript, в которой изображения меняются автоматически через определенный промежуток времени.
В нашей галерее, при смене изображения, мы будет использовать небольшой эффект, а именно – изменение прозрачности картинки!
Простой Html код:
<div class="slideshow"><img src="http://sergey-oganesyan.ru/wp-content/uploads/2017/01/11.jpg"></div>
Здесь все очень просто – в блок с классом slideshow помещаем изображение, которое будет первым.
А вот, собственно, и стили вышеупомянутого класса:
.slideshow{ width: 500px; margin: 40px auto; }
Задаем ширину и выравниваем блок по центру.
Теперь подробнее рассмотрим и разберем javascript (Jquery) код:
Сначала описывается массив image_array, содержащий ссылки на изображения.
Если вам нужно добавить, удалить или изменить картинки галереи, то просто замените ссылки в этом массиве – больше ничего изменяться не нужно!
Переменная image_num используется в качестве счетчика картинок. Когда мы доходим до последней картинки массива, мы обнуляем эту переменную, чтобы снова начать показ с первой картинки (делаем зацикливание).
Далее идет функция slide, которая и реализует перелистывание – это делается так (по шагам):
Как я уже говорил, переменная image_num – это счетчик, его мы сравниваем с длиной массива (то есть с количеством картинок участвующих в слайд шоу) и если image_num равен максимальному значению, то обнуляем его.
Функция slide запускается каждые 3 секунды (3000 миллисекунд) с помощью интервала (setInterval), это значит, что картинки будут перелистываться каждые 3 секунды.
Как видите, ничего сложного нет!
На этом данный урок по javascript подошел к завершению, теперь можете взглянуть на demo пример, а также сказать исходный файл урока.
На этом все, до новых уроков, пока!
Если вам нужна помощь в создании какого-либо функционала, сайта, сервиса, тестов или калькуляторов, то готов помочь, подробнее на странице услуг.
FILED UNDER : IT