Окно предупреждение 18+

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 28 июня 2016 в 15:35
Вопрос.
Кто-нибудь делал всплывающее окно с предупреждением что материалы могут что-то там содержать.
Если делали подскажите как, а то что-то не получается сделать ссылку на эту же страницу, где появилось окно.
Заранее спасибо.
#2 28 июня 2016 в 16:27
Это скрипт всплывающего окна с баннером от алавар.
instantcms.ru/users/files/download6058.html
Если измените фоновую картинку на картинку с текстом, уберете закрывающий крестик и кнопку "Играть", а вместо "Нет, спасибо", напишите "Подтверждаю что мне больше 18 лет", получится то, что вам нужно.
#3 28 июня 2016 в 20:42

Заранее спасибо.

Capitan
Да пжалста:



<style>
#popup {
display: table;
position: fixed; top: 0; left: 0;
z-index: 100;
height: 100%;
width: 100%;
background: rgba(240,240,240,.9);
visibility: hidden;
animation: animaciya 1s 5s forwards; /* 5s — это количество секунд по истечении которых появляется сообщение */
cursor: pointer;
}
@keyframes animaciya {
from {visibility: hidden;}
to {visibility: visible;}
}
#popup figure {
display: table-cell;
vertical-align: middle;
}
#popup div, #popup figcaption, #popup figure:before {
max-width: 500px; /* максимальная ширина */
margin: 0 auto;
border-style: solid;
border-color: rgb(88,125,164);
background: #fff;
}
#popup figure:before { /* стиль кнопки "закрыть" */
content: "закрыть";
display: block;
padding: 0 1%;
border-width: 4px 4px 0 4px;
border-radius: 5px 5px 0 0;
text-align: right;
color: rgb(88,125,164);
}
#popup div, #popup figcaption {
padding: 1%;
cursor: default;
}
#popup figcaption {
position: relative;
border-width: 0 4px 0 4px;
font-size: 150%;
text-transform: uppercase;
color: rgb(100,100,100);
}
#popup figcaption:before { /* стиль восклицательного знака, не поддерживается Google Chrome. Его можно заменить на что-то более приемлемое */
content: "\26a0 \20 \20";
color: red;
font-size: 150%;
vertical-align: middle;
}
#popup div {
border-width: 0 4px 4px 4px;
border-radius: 0 0 5px 5px;
}
</style>

<div id="popup">
<figure>
<figcaption>заголовок Бегите с этого сайта!</figcaption>
<div>содержание материалы могут что-то там содержать!</div>
</figure>
</div>

<script>
window.onkeyup = okno; // нажатие Esc, см. условие "e.keyCode==27"
document.getElementById('popup').onclick = okno;

function okno(e) {
if (e.target.nodeName != 'DIV' && e.target.nodeName != 'FIGCAPTION' || e.keyCode==27) { // через && перечисляются теги, клинкув на которые окно не будет закрыто; сюда же можно включить тег A или IFRAME
document.getElementById('popup').style.display='none';
localStorage.setItem('popup1', 'none');
}
}

if(localStorage.getItem('popup1')) {
document.getElementById('popup').style.display='none';
}
</script>

#4 30 июня 2016 в 22:33
Вставил код, но!
Это немного не то. Надо чтобы:
1-нажимаетДа мне 18 остается на той же странице, запись идет в куки, например месяц
2-при закрытии окна, нажимании куда угодно, пользователя отправляет например на главную, без записи в куки.
Как-то так.
#5 30 июня 2016 в 23:07

Это немного не то. Надо чтобы:

Capitan
Для этого вам нужна форма(можно и без неё), аякс запрос на сервер и обработчик запроса. Целый модуль получается. smile
#6 30 июня 2016 в 23:16
у меня есть вот такой код
  1.  
  2. <div id="bg_popup">
  3. <div id="popup">
  4. <a id="setCookie" class="close" href="ххххх" title="Закрыть" onclick="document.getElementById('bg_popup').style.display='none'; return false;">Закрыть</a>
  5. <h1>ВНИМАНИЕ!</h1>
  6. <p>Данный сайт может содержать материалы для взрослых.<br>
  7. Чтобы продолжить, подтвердите, что вам уже исполнилось 18 лет.</p>
  8. <p>
  9. <a href="хххххх">Да, мне уже есть 18</a>
  10. <a href="хххххх">Нет, мне нет 18 лет</a>
  11. </p>
  12. </div>
  13. </div>
  14. </div>
  15.  
  16. <script type="text/javascript">
  17. $(document).ready(function(){
  18. $("#setCookie").click(function () {
  19. var date = new Date();
  20. date.setTime(date.getTime() + (60 * 1000));
  21. $.cookie("popup", "", {expires: date} );
  22. $("#bg_popup").hide();
  23. });
  24.  
  25. if ( $.cookie("popup") == null )
  26. {
  27. setTimeout(function(){
  28. $("#bg_popup").show();
  29. }, 2000)
  30. }
  31. else { $("#bg_popup").hide();
  32. }
  33. });
  34. </script>
  35.  
проблема в том, что не пойму как сделать чтобы когда нажимаешь да мне 18 оставаться в этом же контенте
#7 30 июня 2016 в 23:17

Это скрипт всплывающего окна с баннером от алавар.

Нил™
здесь есть куки раз в день независимо от того какой вариант выбран. Поставьте показывать только гостям и достаточно.
Не, ну можете конечно подождать пока уважаемый Lora, напишет вам модуль)
#8 1 июля 2016 в 00:08

проблема в том, что не пойму как сделать чтобы когда нажимаешь да мне 18 оставаться в этом же контенте

Capitan
А сейчас куда перенаправляет?
#9 1 июля 2016 в 00:16

здесь есть куки раз в день независимо от того какой вариант выбран.

Нил™
Как то сомнительно.Так как на #setCookie повешены два onclick.Не уверен 100%, но какой из них срабатывает? Мне думается, что тот который закрывает окно.
#10 1 июля 2016 в 12:56
Если кто сможет сделать, готов немного отблагодарить :)
#11 1 июля 2016 в 14:46
Какая ветка?
#12 1 июля 2016 в 15:15
  1.  
  2. <div id="bg_popup">
  3. <div id="popup">
  4. <a class="close" href="/" title="Закрыть">Закрыть</a>
  5. <h1>ВНИМАНИЕ!</h1>
  6. <p>Данный сайт может содержать материалы для взрослых.<br>Чтобы продолжить, подтвердите, что вам уже исполнилось 18 лет.</p>
  7. <p>
  8. <a id="setCookie" href="#">Да, мне уже есть 18</a>
  9. <a href="/">Нет, мне нет 18 лет</a>
  10. </p>
  11. </div>
  12. </div>
  13. <script>
  14. $(function(){
  15. $('#setCookie').click(function(){
  16. $.cookie('popup', '1', {expires: 30});
  17. $('#bg_popup').hide();
  18. });
  19. $('#bg_popup').hide();
  20. if(!$.cookie('popup')){
  21. setTimeout(function(){ $('#bg_popup').show(); }, 2000)
  22. }
  23. });
  24. </script>
  25.  
#13 1 июля 2016 в 19:55
Всем спасибо вот итоговый код. Может что-то и коряво, но главное работает
  1.  
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <style>
  6. #bg_popup {
  7. background: #000;
  8. height: 100%;
  9. opacity: 0.9;
  10. position: fixed;
  11. width: 100%;
  12. z-index: 100;
  13. top: 0;
  14. left: 0;
  15. }
  16. #popup {
  17. background-color: #fff;
  18. height: 200px;
  19. position: fixed;
  20. color: #f00;
  21. width: 300px;
  22. padding: 2px;
  23. }
  24. </style>
  25. </head>
  26. <body>
  27. <div id="bg_popup">
  28. <div id="popup">
  29. <p style="text-align: right;"><a class="close" href="/" title="Закрыть">Закрыть</a></p>
  30. <h1><p style="text-align: center;">ВНИМАНИЕ!</p></h1>
  31. <p style="text-align: justify;">Данный сайт может содержать материалы для людей старше 18 лет.<br>Чтобы продолжить, подтвердите, что вам уже исполнилось 18 лет.</p>
  32. <p style="text-align: center;">
  33. <a id="setCookie" href="#">Да, мне есть 18 лет</a>
  34. <a href="/">Нет, мне нет 18 лет</a>
  35. </p>
  36. </div>
  37. </div>
  38. <script>
  39. $(function(){
  40. $('#setCookie').click(function(){
  41. $.cookie('popup', '1', {expires: 30});
  42. $('#bg_popup').hide();
  43. });
  44. $('#bg_popup').hide();
  45. if(!$.cookie('popup')){
  46. setTimeout(function(){ $('#bg_popup').show(); }, 2000)
  47. }
  48. });
  49.  
  50. $(function() {
  51. alignCenter($('#popup')); // центрировали окно
  52. $(window).resize(function() {
  53. alignCenter($('#popup')); // центрирование при ресайзе окна
  54. })
  55.  
  56. // функция центрирования
  57. function alignCenter(elem) {
  58. elem.css({
  59. left: ($(window).width() - elem.width()) / 2 + 'px', // получаем координату центра по ширине
  60. top: ($(window).height() - elem.height()) / 2 + 'px' // получаем координату центра по высоте
  61. })
  62. }
  63. })
  64. </script>
  65. </body>
  66. </html>
  67.  
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.