Скрипт всплывающего окна (модальное/pop-up окно)

Создание CSS-наложения

Прежде всего, необходимо создать элемент наложения и контейнер для формы входа.

Наложение добавляет черный оттенок к остальной части контента страницы, тем самым выделяя необходимый блок. Это простой CSS-эффект, использующий позиционирование и цвет фона.

Поскольку его стили разделяются на две основные части, я собираюсь объяснить их по отдельности.

Сначала рассмотрим установку позиции и добавление цвета

div.overlay {
    background-color: rgba(0,0,0,.25);
    bottom: 0;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}

Разберем этот код:

  • background-color: rgba(0,0,0,.25) — использование RGBA позволяет указать цвет и альфа-значение, альфа — это непрозрачность цвета;
  • bottom: 0 — позиционирует элемент внизу страницы;
  • left: 0 — позиционирует элемент по левому краю страницы;
  • position: fixed — при прокрутке страницы позиция элемента не изменяется;
  • top: 0 — позиционирует элемент вверху страницы;
  • width: 100% — элемент заполняет всю ширину страницы.

Вторая часть включает flexbox CSS3, что значительно упрощает позиционирование элементов внутри контейнера. Давайте посмотрим:

div.overlay {
    display: flex;
    justify-content: center;
}

Перед тем, как перейти к popup окну для сайта, пояснение Flexbox:

  • display: flex — определяет гибкий контейнер, либо inline-flex, либо block (flex);
  • justify-content: center — выравнивает содержимое по центру.

Примечание: на момент написания этой статьи flexbox не полностью поддерживался во всех основных браузерах. Если хотите охватить максимальное количество браузеров, необходимо использовать префиксы:

div.overlay {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
}

Окончательный код:

div.overlay {
    background-color: rgba(0,0,0,.25);
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}

Стили панели входа на HTML и CSS

Теперь у нас есть контейнер, и нужно разместить в нем создаваемую форму входа. Общей чертой подобных форм с popup окном jQuery является полупрозрачная граница. Мы используем элемент контейнера для достижения этого эффекта, но можно использовать границу, чтобы получить то же самое:

div.overlay > div.login-wrapper {
    align-self: center;
    background-color: rgba(0,0,0,.25);
    border-radius: 2px;
    padding: 6px;
    width: 450px;
}

Большинство CSS-свойств очевидны. С помощью значения rgba мы еще раз установили цвет фона, что дает красивый непрозрачный эффект. border-radius задает закругленные углы контейнера формы входа.

Свойство, которое требует пояснений, это align-self, поскольку оно довольно новое. Это связано с flexbox. align-self определяет горизонтальное выравнивание элемента, и мы задали выравнивание точно по центру.

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

div.overlay > div.login-wrapper > div.login-content {
    background-color: rgb(255,255,255);
    border-radius: 2px;
    padding: 24px;    
    position: relative;
}

Мы используем сплошной белый фон, поэтому вместо rgba применили только rgb. Отступ в 24 пикселя можете изменить по своему усмотрению.

Важной частью этого правила является определение position. Это необходимо при использовании абсолютно позиционированных элементов внутри контейнера — это будет кнопка закрытия. Теперь нужно оформить внутри панели входа заголовок (h3):

Теперь нужно оформить внутри панели входа заголовок (h3):

div.overlay > div.login-wrapper > div.login-content > h3 {
    color: rgb(0,0,0);
    font-family: 'Varela Round', sans-serif;
    font-size: 1.8em;
    margin: 0 0 1.25em;
    padding: 0;
}

Чтобы выделить заголовок, я использую черный округлый шрифт с размером 1.8 em. Использование 1.8 em задает размер шрифта относительно шрифта документа. Это называется эластичностью шрифта.

Подбирайте правильный размер мобильного поп-апа

Мобильный поп-ап может быть маленьким и не перекрывать основное содержание сайта, а может быть большим и привлекать внимание. Давайте сравним. Мы устроили А/Б тест, в котором половине посетителей, выбранных случайным образом, показывалась одна версия поп-апа, а второй половине — другая

Дальше мы смотрим, у какого поп-апа конверсия больше, и оставляем победителя.Вот какие результаты мы получили в этом случае:Вариант А — 1,2%;Вариант Б — 1,7%.Конечно, большое всплывающее окно успешнее, потому что его сложнее проигнорировать: нужно либо закрыть поп-ап, либо оставить номер телефона.Кроме того, свою роль играет и послание — “Оставьте телефон” — четкие указания к действию всегда работают лучше. Однако если оставить только его, потеряется смысл — непонятно, зачем совершать действие, поэтому в маленькой версии лучше оставить ценность.Однако не переборщите с большими поп-апами. Именно это часто бесит пользователей: ведь если ваше сообщение перекрывает основное содержание сайта, есть соблазн его закрыть или вовсе уйти. А это совсем не то, чего бы вам хотелось, не правда ли?

Мы устроили А/Б тест, в котором половине посетителей, выбранных случайным образом, показывалась одна версия поп-апа, а второй половине — другая. Дальше мы смотрим, у какого поп-апа конверсия больше, и оставляем победителя.Вот какие результаты мы получили в этом случае:Вариант А — 1,2%;Вариант Б — 1,7%.Конечно, большое всплывающее окно успешнее, потому что его сложнее проигнорировать: нужно либо закрыть поп-ап, либо оставить номер телефона.Кроме того, свою роль играет и послание — “Оставьте телефон” — четкие указания к действию всегда работают лучше. Однако если оставить только его, потеряется смысл — непонятно, зачем совершать действие, поэтому в маленькой версии лучше оставить ценность.Однако не переборщите с большими поп-апами. Именно это часто бесит пользователей: ведь если ваше сообщение перекрывает основное содержание сайта, есть соблазн его закрыть или вовсе уйти. А это совсем не то, чего бы вам хотелось, не правда ли?

Всплывающее окно с формой

Сделаем форму, которая будет открываться по клику на ссылку. Форма будет отправлять данные на ваш контроллер используя Ajax.

Пример SMARTY блока:

{capture name="content_for_popup"}
<form name="my_form" action="{""|fn_url}" method="post" class="cm-ajax">
    <div class="ty-control-group">
        <label class="ty-control-group__title" for="name">{__("your_name")}</label>
        <input id="name" size="50" class="ty-input-text-full" type="text" name="form_data" value="" />
    </div>
    <div class="buttons-container">
        <div class="ty-float-left">
{include file="buttons/button.tpl" but_name="dispatch" but_text=__("submit") but_role="submit" but_meta="ty-btn__primary ty-btn__big cm-form-dialog-closer ty-btn"}
        </div>
        <div class="ty-float-right">
            <a class="cm-dialog-closer ty-btn ty-btn__secondary" >Закрыть</a>
        </div>
    </div>
</form>
{/capture}

{include file="common/popupbox.tpl" text="Заголовок" content=$smarty.capture.content_for_popup link_text="Название ссылки"}

Фокусировка

По событию — время, когда наше модальное окно появится, мы установим курсор в поле с id

$.colorbox({
  ...
  onComplete: function(){ $("#myInput").focus(); }
});

Возврат фокуса

Наше модальное окно будет когда-то закрыто (по кнопке закрытия или после заполнения формы) и хорошо бы вернуть курсор пользователя в то место, где он был до момента появления всплывающего окна.Для этого мы немного изменим наш код, и будем запоминать место в документе, где был пользователь до открытия поп-апа:

var lastFocus;

setTimeout(function(){
  lastFocus = document.activeElement;

  $.colorbox({
    ...
    onClosed: function(){ lastFocus.focus(); }

  });
}, 2000);

Рекомендации по использованию pop-up

  1. Используйте pop-up там, где это необходимо
  2. Обогащайте пользовательский опыт, не прерывайте его
  3. Сделайте pop-up визуально легким
  4. Выберите правильное время
  5. Установите правильный стимул

Мы собрали основные рекомендации, которые помогут вам эффективно применять pop-up.

  • Используйте pop-up там, где это необходимо. Чтобы всплывающие окна не раздражали пользователей и приносили результат, тщательно продумывайте их цель. Предположим, у вас есть страница с тоннами трафика, но большинство посетителей покидают ее, не читая ваш контент до конца. В этом случае pop-up поможет перевести коммуникацию на новый уровень.
  • Обогащайте пользовательский опыт, не прерывайте его. Существует множество способов заставить pop-up выполнять свою работу без ущерба для пользовательского опыта. Даже если посетители прочитают страницу до конца, то скорее всего уйдут, как только найдут то, что искали. Так почему бы не показать всплывающее окно, которое позволит общаться по email? Это беспроигрышный вариант для вас и будущих клиентов.
  • Сделайте pop-up визуально легким. Постарайтесь, чтобы стиль всплывающего окна соответствовал стилю страницы. Выберите тот же цвет фона, что и на сайте, напишите небольшой текст и сделайте кнопку CTA того же цвета, что и ссылки в статье.
  • Выберите правильное время. Не существует единой стратегии, которая подошла бы всем. Поэтому, тестируйте, тестируйте и еще раз тестируйте. Попробуйте использовать для появления pop-up разные временные рамки. Полагайтесь при этом на реальные данные, а не на предположения.
  • Установите правильный стимул. Используйте pop-up, чтобы увеличивать ценность контента. Например, когда пользователь читает статью о материалах для обустройства дома, предложите ему видео-руководство на эту тему.

Пробуйте, экспериментируйте и помните, pop-up станет эффективным инструментом для бизнеса только в том случае, если будет нести пользу вашей аудитории.

Создать всплывающую форму

Шаг 1) Добавить HTML

Используйте элемент <form> для обработки входных данных. Вы можете узнать больше об этом в нашем PHP учебнике.

Пример

Шаг 2) Добавить CSS:

Пример

{box-sizing: border-box;}/* Кнопка, используемая для открытия контактной формы — фиксируется в нижней части страницы */.open-button {  background-color: #555;  color: white;  padding: 16px 20px;  border: none;  cursor: pointer;  opacity: 0.8;  position: fixed;  bottom: 23px;  right: 28px;  width: 280px;}/* Всплывающая форма-скрыта по умолчанию */.form-popup {  display: none;  position: fixed;  bottom: 0;  right: 15px;  border: 3px solid #f1f1f1;  z-index: 9;}/* Добавить стили для контейнера формы */.form-container {  max-width: 300px;  padding: 10px;  background-color: white;}/* Поля ввода полной ширины */.form-container input, .form-container input {  width: 100%;  padding: 15px;  margin: 5px 0 22px 0;  border: none;  background: #f1f1f1;}/* Когда входы получают фокус, сделайте что-нибудь */.form-container input:focus, .form-container input:focus {  background-color: #ddd;  outline: none;}/* Установите стиль для кнопки отправить/войти */.form-container .btn {  background-color: #4CAF50;  color: white;  padding: 16px 20px;  border: none;  cursor: pointer;  width: 100%;  margin-bottom:10px;  opacity: 0.8;}/* Добавить красный цвет фона для кнопки «Отмена» */.form-container .cancel {  background-color: red;}/* Добавить некоторые эффекты наведения на кнопки */.form-container .btn:hover, .open-button:hover {  opacity: 1;}

Шаг 3) Добавить JavaScript:

Пример

function openForm() {  document.getElementById(«myForm»).style.display = «block»;}function closeForm() {  document.getElementById(«myForm»).style.display = «none»;}

Совет: Зайдите на наш учебник HTML Форм чтобы узнать больше о формах HTML.

Совет: Зайдите на наш учебник CSS Форм чтобы узнать больше о том, как стилизовать элементы формы.

Использование ThickBox

Для создания модального окна (thickbox) нужно сделать две вещи:

  1. Подключить скрипт ThickBox в PHP, вызвав функцию add_thickbox().

  2. Добавить в HTML ссылку (тег <a>), которая будет открывать модальное окно. Ссылка должна иметь:
    • Класс thickbox: .
    • В URL (атрибут href) нужно добавить дополнительные параметры запроса.

Параметры модального окна

Параметры запроса, которые добавляются в атрибут href ссылки открывающей модальное окно:

width
Ширина модального окна в пикселях.
height
Высота модального окна в пикселях.
TB_iframe

Указываем этот параметр и ставим ему значение true, если нужно загрузить контент указанной в URL ссылки в iframe. Т.е. URL будет выглядеть так: . Так контент http://example.com будем показан в модальном окне, в iframe.
В этом случае не нужно создавать сам элемент модального окна в HTML текущей страницы. ВП сделает все автоматом.

TB_inline

При использовании этого параметра вместо TB_iframe модальное окно покажет заранее созданный HTML элемент с id атрибутом указанным в параметре . Т.е

URL должен выглядеть так: .
В этом случае нужно создать DIV элемент с .

Контент модального окна

Важно чтобы контент внутри элемента находился внутри другого элемента. Выше это тег

.
Так неправильно:

Контент модального окна

Примеры создания модальных окон

#1 inline модальное окно, контент которого берется из текущей страницы

<?php add_thickbox(); ?>

<div id="my-modal-id" style="display:none;">
	 <p>
		  Контент модального окна.
	 </p>
</div>

<a href="/?TB_inline&width=600&height=550&inlineId=my-modal-id" class="thickbox">Открыть модальное окно</a>

В результате получим такое модальное окно

#2 iframe модальное окно, контент которого берется по указанному URL

<?php add_thickbox(); ?>

<a href="http://example.com?TB_iframe=true&width=600&height=550" class="thickbox">Открыть модальное окно</a>

#3 Вызов модального окна через JS функцию

Допустим, мы хотим использовать inline модальное окно, но контент этого окна заменять через AJAX. К сожалению, в API нет события когда модальное окно показывается (оно есть для iframe варианта, то не для inline).

Мы можем использовать JS функцию , она входит в состав апи.

Пример:

<?php add_thickbox(); ?>

<div id="my-modal-id" style="display:none;">
	 <p>
		  Контент модального окна.
	 </p>
</div>

<a href="#" class="modal-init-js" onclick="return window.eduResModalShow(this);">Открыть модальное окно</a>

И теперь дополняющий JS код, где используется tb_show() и создается AJAX запрос.

jQuery(document).ready(function($){

	var $modal = $('#my-modal-id');
	var $modalCont = $modal.find('>*');

	// шаг 1 - показ модального окна и выбор объкта редактирвоания
	window.eduResModalShow = function(that){

		tb_show( 'Заголовок модального окна', '/?TB_inline&inlineId=my-modal-id&width=700&height=500' );

		// AJAX запрос для загрузки контента окна
		$modalCont.html('загружаю...');
		ajaxs( 'edu_results_modal_html', { user_id: 5 }, function(html){
			$modalCont.html(html);
		});

		return false; // для ссылки
	}

});

Заметки

JS код находится в файле

HTML код который создается автоматически

<div id='TB_title'>
	<div id='TB_ajaxWindowTitle'>Заголовок</div>
	<div id='TB_closeAjaxWindow'>
		<button type='button' id='TB_closeWindowButton'><span class='tb-close-icon'></span></button>
	</div>
</div>

<div id='TB_ajaxContent'></div>

Триггером модального окна может быть

HTML тег: <a>, <area> и <input>. Для инициализации каждый тег должен иметь class=»thickbox».

Для <a> URL и параметры указываются в атрибуте href. Для <area> и <input> в атрибуте alt.

// удалено
jQuery( 'body' ).trigger( 'thickbox:removed' );

// закрыто
jQuery( '#TB_window' ).trigger( 'tb_unload' )

// загружено
jQuery( '#TB_window' ).trigger( 'thickbox:iframe:loaded' );

Типы модальных окон

Тип контента в окне — Inline

Далее нам следует инициализировать наш плагин. Для этого нам нужно определиться с типом всплываемого контента. Давайте вызовем в модальном окне обычный текст. Тогда код инциализации будет для контента с типом — Inline.

Как видим событие вызова модального окна вешается на объект с классом «popup-content«. Поэтому создадим его, например, это будет ссылка с якорем на вызываемый блок с id=»text-popup».

И еще кое что. Для того, чтобы наше окно стало видно нам необходимо в файл стилей «magnific-popup.css» добавить следующий код:

Данное правило задает фоновый цвет окну и отступы. Их изначально его нет в файле стилей, т.к. само окно можно оформить на свое усмотрение.

В результате у нас открывается модальное окно с нашим текстом. Все довольно просто.

Теперь давайте откроем картинки в модальных окнах.

Галерея картинок — Gallery

инициализация будет следующей:

Тип контента — Iframe

Теперь давайте откроем в модальном окне видео Youtube.

Код инициализации будет следующим:

Заметьте, что адрес видео берется из адресной строки браузера, а не ссылка поделиться в Youtube. Также, если вы знаете, можно запретить в конце видео Youtube показ похожих видеороликов. Но для этого нужно добавить к адресу в коде iframe ролика параметр — ?rel=0. Но как это сделать, ведь мы копируем адрес из адресной строки? Так скажу вам, что API Magnific Popup позволяет нам настраивать код так, как нам нужно. Я поковырялся в документации и немного дополнил код инициализации.

Исходя из данного кода, видно, что мы создаем свой шаблон видео Youtube. В параметре «src» в конце добавляем параметр «rel=0» и все, теперь в конце видео не будет похожих роликов. Можете промотать видео до конца и посмотреть.

Тип — Ajax

В модальных окнах Magnific можно подгружать контент асинхронно, посредством технологии Ajax. Например, на демо-сайте я загружу страницу какой либо статьи в модальном окне. Демо-сайт работает на Joomla.

Это обычная ссылка на страницу статьи. Это всего лишь пример и я ставлю адрес статьи со своего сайта. Чтобы показать только контент, отбросив ненужные блоки (шапка сайта, сайдбар, подвал и т.д.) я добавлю в конец адреса параметр — ?tmpl=component.

Код инициализации:

Важное замечание! Загружаемый контент должен быть обернут блочными тегами так, чтобы был только один корневой элемент. Иначе, ваше окно будет закрываться по клику в любой его части.

Форма в модальном окне

В данном случае форма будет загружаться с типом контента «inline«. В этом случае вы сможете спросить — а чем она отличается от первого варианта, где мы показывали просто текст? Ведь вместо теста мы можем вставить код формы. Да, все правильно, вместо текста будет просто код формы с дополнительной опцией в инициализации. Данная опция будет ставить фокус на определенном поле при загрузке формы. А это в свою очередь удобство. Лично мне нравится, что при открытии, скажем, формы поиска фокус сразу идет на поле ввода ключевого запроса.

В данном случае при открытии формы фокус срабатывает на поле с id=»name» — Имя.

Диалоговые модальные окна

Чем данное окно отличается от предыдущих с типом inline? Практически ничем, за исключением того, что данное окно не закрывается по клику на затемненной области. Также скрыта кнопочка с крестиком. Для закрытия мы будет использовать другой объект. Таким образом можно создавать диалоговые окна на сайте.

Здесь, как видим, используются дополнительные опции. О некоторых из них мы поговорим ниже.

Доступ к попапу из основного окна

Вызов возвращает ссылку на новое окно. Эта ссылка может быть использована для управления свойствами окна, например, изменения положения и др.

Например, здесь мы генерируем содержимое попапа из JavaScript:

А здесь содержимое окна модифицируется после загрузки:

Обратите внимание: сразу после новое окно ещё не загружено. Это демонстрируется в строке. Так что нужно ждать , чтобы его изменить

Или же поставить обработчик на

Так что нужно ждать , чтобы его изменить. Или же поставить обработчик на .

Политика одного источника

Окна имеют свободный доступ к содержимому друг друга только если они с одного источника (у них совпадают домен, протокол и порт (protocol://domain:port).

Иначе, например, если основное окно с , а попап с , это невозможно по соображениям пользовательской безопасности. Детали см. в главе Общение между окнами.

Варианты установки поп ап окна на сайт

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

Скрипт

Это базовый способ, который подразумевает «ручное» написание кода для попапа. Он имеет ряд преимуществ, но и несколько существенных недостатков.

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

<script>
    var PopUpW = window.open("", "PopUp Window", "resizable=no,scrollbars=no,width=350,height=150,copyhistory=1");
    PopUpW.document.write("Много-много текстового контента!");
</script>

Источник кода: http://romanchueshov.ru/sekretyi-javascript/vsplyivayushhee-okno-na-javascript-css-i-jquery.html

Плагин

Еще один способ установки поп-апа. Часто используется для создания всплывающих окон при входе на сайтах WordPress. Способ заключается в установке загруженного или купленного плагина на сайт. После установки необходимо зайти в настройки и активировать плагин.

Преимущества такого варианта:

  • Легкая и быстрая установка.
  • В большинстве плагинов включена рассылочная интеграция.
  • Готовые шаблоны.

Недостаток только один – плагины с большим выбором шаблонов и гибкими настройками почти всегда платные.

Вот несколько плагинов для сайтов на Вордпресс:

  • Popup Builder.
  • Popup Maker.
  • Popup by Supsystic.
  • Popup anything on click.
  • WP Popups.

Сервис

Наиболее удобный и эффективный способ добавления всплывающего окна. К основным плюсам стоит отнести:

  • Простой и понятый интерфейс.
  • Адаптивность.
  • Широкие настройки кастомизации и появления.
  • Интеграция с рассылочным сервисом.
  • Простота добавления готового кода с окном без необходимости привлекать веб-разработчика.

Условным минусом также может считаться платное использование сервисов (разовая или подписка).

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

Добавьте блоку класс , тогда pop-up откроется при открытии страницы.

Чтобы окно не открывалось каждый раз, добавляйте данный класс при особых условиях, например, в зависимости от параметра в URL (или от сессии посетителя).

Пример SMARTY блока, окно будет открыто если в URL есть параметр :

<div class="hidden {if $smarty.request.open_love == "Y"}cm-dialog-auto-open cm-dialog-auto-size{/if}" id="open_id" title="Заголовок окна">
    <p>
        Помню. Книгу раскрыв, ты чуть-чуть шелестела страницами.<br/>
        Я спросил: «Хорошо, что в душе преломляется лед?»<br/>
        Ты блеснула ко мне, вмиг узревшими дали, зеницами.<br/>
        И люблю — и любовь — о любви — для любимой — поет.
    </p>
</div>

Место для поп-апа

Традиционно поп-ап появлялся в центре страницы. Но сервисы обратных звонков предлагают множество других вариантов:

Выбор расположения зависит от структуры сайта, но самыми распространенными являются «По центру» и «Справа»

Центральные захватывают внимание лучше, особенно если включить опцию «оверлей» (затемнение вокруг поп-апа), поэтому их целесообразнее использовать в критические моменты, например, когда клиент готов покинуть сайт. Популярность расположения справа объясняется тем, что пользователи в основном правши, и курсор мышки чаще всего находится с правой стороны экрана. Если окна с разными сценариями появления предлагают разные бонусы, маркетологам стоит оповестить продавцов о содержании поп-апов, чтобы тема обращения клиента не стала для продавцов сюрпризом

Однако и сам продавец может узнать, какой сценарий захватил клиента: в личном кабинете можно получить информацию об этом

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

Шаг 1. Создаём разметку для модального окна

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

Желательно вставить его в начале или в конце страницы.

PHP

<!—Разметка для модального окна—->
<div id=»iw-modal» class=»iw-modal»>
<div class=»iw-modal-wrapper»>
<div class=»iw-CSS-modal-inner»>
<div class=»iw-modal-header»>
<h3 class=»iw-modal-title»>Заголовок</h3>
<a href=»#close» title=»Закрыть» class=»iw-close»>×</a>
</div>
<div class=»iw-modal-text»>
<p>Здесь Вы можете разместить свой текст, изображения или формы обратной связи</p>
</div>
</div>
</div>
</div>
<!—end.Разметка для модального окна—->

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

<!—Разметкадлямодальногоокна—->

<div id=»iw-modal»class=»iw-modal»>

<div class=»iw-modal-wrapper»>

<div class=»iw-CSS-modal-inner»>

<div class=»iw-modal-header»>

<h3 class=»iw-modal-title»>Заголовок<h3>

<ahref=»#close»title=»Закрыть»class=»iw-close»>×<a>

<div>

<div class=»iw-modal-text»>

<p>ЗдесьВыможетеразместитьсвойтекст,изображенияилиформыобратнойсвязи<p>

<div>

<div>

<div>

<div>

<!—end.Разметкадлямодальногоокна—->

Здесь вы можете изменить заголовок модального окна и его содержимое.

Показываем модальное окно

Обычно нам нужно к любому объекту HTML подвязать Colorbox с определенными параметрами:

$(selector).colorbox({
  key:value, 
  key:value
});

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

$.colorbox({
  key:value, 
  key:value
});

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

$.colorbox({
  html:"<h2>Подпишись и получи скидку!</h2>",
  className: "cta",
  width: 350,
  height: 150
});

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

setTimeout(function(){
  $.colorbox({
    html:"<h2>Оставьте Email и получит скидку</h2>",
    className: "cta",
    width: 350,
    height: 150
  });
}, 10000);

Теперь всплывающее окно на сайте появится через 10 секунд проведенных на странице, где установлен данный скрипт.

ИЗОБРАЖЕНИЯ

Слайд шоуГалерея слайд шоуМодальное изображениеЛайтбоксОтзывчивая сетка изображенийСетка изображенийГалерея вкладокЭффект наведения на изображениеНаложение слайда на изображениеНаложение на изображениеНаложение заголовка на изображениеНаложение иконки на изображениеЭффект к изображениюЧерно-белое изображениеТекст на изображенииИзображение с текстовым блокомИзображение c прозрачным текстомИзображение на всю страницуФорма на изображенииИзображение герояРазмытое фоновое изображениеФоновое изображениеВыравненные изображенияОкругленные изображенияИзображение аватарОтзывчивое изображениеИзображение по центруМинитюрное изображениеЗнакомство с командойЛипкое изображениеЗеркальное изображениеДрожание изображенияГалерея портфолиоПортфолио фильтрЗум изображенияЛупа изображенияПолзунок сравнения

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Люкс-хост
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: