Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: 18+ предупреждение
цитата
24/03/12 в 14:00
 hellshouter
Так как поставщики рекомендуют на магазины ставить всплывающее окошко 18+, ищу самое простое и красивое решение данного вопроса. На данный момент нагуглил вот такой код, но не работает почему-то, а JS я вообще не разбираюсь абсолютно.

Может кто подскажет что подлечить в ниже-приведенном коде, что бы заработало?

Задача, при первом посещении проверить наличие куки, если куки нет, показываем окошко, при нажантии на "Подтвердить" ставим куку, если кука есть, ничего не делаем, время куки 24 часа установить еще желательно.

Спасибо.


Код:
<a id="hidden_link" style="display: none;" rel="fancybox" href="#checkAge">&nbsp;</a>

<div style="display: none;">
    <div id="checkAge" style="width:430px;height:150px;overflow:auto; margin-left:20px;">
      <h1>Внимание!</h1><p style="margin-top: 20px;">Подтвердите, что вам больше 18 лет.</p>
       <p style="padding-top:10px;">
            <button id="age-accept" onclick='setCookie(); $.fancybox.close(); return false;'>Подтвердить</button>
            <button id="age-cancel" onclick='window.location="http://google.com";'>Отказаться</button>
        </p>
    </div>
</div>

<script type="text/javascript">
$(document).ready(function () {
     $('#hidden_link').fancybox({
        'titleShow' : false,
        'modal': true,
        'overlayOpacity' : 0.5
     });

    if( !checkAge() )
    {
        $('#hidden_link').trigger('click');
    }
});
</script>


p.s. на сайте подключен http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js
цитата
24/03/12 в 15:15
 Yacc
Код:
<!-- DOCTYPE может быть другим, но он должен быть -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
   <head>
      <script src="http://code.jquery.com/jquery-latest.min.js"></script>

<!-- https://github.com/carhartl/jquery-cookie -->
      <script src="jquery.cookie.js"></script>

<!-- http://fancybox.net -->
      <script src="fancybox/jquery.fancybox-1.3.4.pack.js"></script>
      <link rel="stylesheet" href="fancybox/jquery.fancybox-1.3.4.css"  />

      <script>
         jQuery(document).ready(function () {
             jQuery('#hidden_link').fancybox({
               'titleShow' : false,
               'modal': true,
               'overlayOpacity' : 0.5
             });
            if(!checkAge()) {
               jQuery('#hidden_link').trigger('click');
            }
         });
         function accept() {
            jQuery.cookie('age', 18, {expires:1});
            jQuery.fancybox.close();
            return false;
         }
         function cancel() {
            window.location = 'http://google.com';
         }
         function checkAge() {
            return (jQuery.cookie('age') == 18);
         }
      </script>
   </head>
   <body>
      <a id="hidden_link" style="display: none;" rel="fancybox" href="#checkAge"></a>
      <div style="display: none;">
         <div id="checkAge">
            <h1>18+</h1>
            <p>
               <button id="age-accept" onclick="accept();">Yes</button>
               <button id="age-cancel" onclick="cancel();">No</button>
            </p>
         </div>
      </div>
   </body>
</html>


Эта страница в полной версии