Появление модального окна не сразу, а через какое-то время весьма полезная штука. И поисковики благосклонны и пользователи довольны.
Обычно формы в Pop Up окнах делать не сложно, а вот чтобы была задержка хотя бы секунд в 10, уже проблематично. Я находил такие только за $.
Пришлось соорудить собственный метод. За основу взят компонент RsForm. Используется CMS Joomla.
С помощью дополнительного плагина Content - RSForm! Pro помещаем нашу форму в материал. Но предварительно нужно разместить скрипт в пределах тега <head>. Итак, по-порядку:
<script type="text/javascript">
var delay_popup = 10000;
setTimeout("document.getElementById('modal_popup').style.display='block'", delay_popup);
</script>
var delay_popup = 10000 - это задержка в миллисекундах, сейчас находится в 10 сек.
Размещаем ближе к началу страницы, перед HTML кодом самой формы.- HTML код формы, в приницпе здесь может быть любой текст, формы. Что сами придумаете
<div id="modal_popup">
<div id="modal">
<p>{*rsform 7}</p><a href="#" class="close" title="Закрыть" onclick="document.getElementById('modal_popup').style.display='none'; return false;">X</a>
</div>
</div>
{*rsform 7}
- добавляем форму в материал.
Добавлять этот код в модули не пробовал. Это может быть полезно для размещения модального окна на нескольких страницах. * убирайте, просто на моем сайте тоже используется этот плагин и вместо кода появляется форма :) - И красиво оформляем всплывающее модальное окно
#modal_popup{
background-color: rgba(0, 0, 0, 0.8);
display: none;
position: fixed;
z-index: 99999;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
#modal {
background: #fff;
width: 520px;
margin: 15% auto;
padding: 5px 20px 13px 20px;
border: 2px solid #E51A4B;
position: relative;
-webkit-box-shadow: 0px 0px 20px #000;
-moz-box-shadow: 0px 0px 20px #000;
box-shadow: 0px 0px 20px #000;
-webkit-border-radius: 15px;
-moz-border-radius: 15px;
border-radius: 15px;
}
.close{
display:block;
position:absolute;
top:-12px;
right:5px;
width:25px;
height:25px;
line-height:25px;
font-size: 12px;
color:white;
background:red;
cursor:pointer;
-webkit-border-radius: 15px;
-moz-border-radius: 15px;
-ms-border-radius: 15px;
-o-border-radius: 15px;
border-radius: 15px;
-moz-box-shadow: 1px 1px 3px #000;
-webkit-box-shadow: 1px 1px 3px #000;
box-shadow: 1px 1px 3px #000;
text-align: center;
}