2012-05-10 9 views
1

私は正常にbpopupを使用して私のホームページにフルスクリーンポップアップを追加しました。JQueryのホームページへの最初の訪問

素晴らしいですが、ボタンを押したときにのみ機能します。ユーザーが初めてサイトにアクセスするたびに、ポップアップをホームページとホームページのみに表示します。

私が持っているコードは次のとおりです。

<script> 
    // Semicolon (;) to ensure closing of earlier scripting 
    // Encapsulation 
    // $ is assigned to jQuery 
    ;(function($) { 

     // DOM Ready 
     $(function() { 

      // Binding a click event 
      // From jQuery v.1.7.0 use .on() instead of .bind() 
      $('button').bind('click', function(e) { 

       // Prevents the default action to be triggered. 
       e.preventDefault(); 

       // Triggering bPopup when click event is fired 
       $('#announce').bPopup(); 

      }); 

     }); 

    })(jQuery); 
</script> 

これは素晴らしい作品が、どのように私はそれにクッキー関連するハンドラを追加しますか?

ご協力いただきありがとうございます。本当に感謝しています。 quirksmodeから

答えて

0

:あなたが好きなものになるでしょう

function createCookie(name,value,days) { 
    if (days) { 
     var date = new Date(); 
     date.setTime(date.getTime()+(days*24*60*60*1000)); 
     var expires = "; expires="+date.toGMTString(); 
    } 
    else var expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 
} 

function readCookie(name) { 
    var nameEQ = name + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
     var c = ca[i]; 
     while (c.charAt(0)==' ') c = c.substring(1,c.length); 
     if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
    } 
    return null; 
} 

function eraseCookie(name) { 
    createCookie(name,"",-1); 
} 

createCookie("visited", "true", 90); 

をし、そのクッキーがreadCookie()を使用して設定されているならば、ちょうどチェック。

+0

ありがとうございます。 Vが役に立ちました。 – user1386796

0

クッキープラグイン:あなたのページが読み込まあなたはクッキーが既に存在するかどうかを確認するためにあなたのコード内で条件を追加するには、このCookie pluignを使用することができます

var showDialog=$.cookie("test"); 
if(showDialog==1) 
//showDialog 
+0

もちろん、これにはクッキープラグインが必要です。 – karim79

+0

回答を編集しました –

+0

ありがとうございます。とても助かりました! – user1386796

0

としてCookieの値をチェックしhttps://github.com/carhartl/jquery-cookie

$.cookie("test", 1);//setting a cookie 
$.cookie("test", null);//deleting a cookie 
$.cookie("test", 1, { expires : 10 });//setting cookie with time out 

。このように

if($.cookie('first_visit') != '0'){ 
    //Show modal as Cookie is not set 
    $('#announce').bPopup(); 
    // now set cookie 
    $.cookie('first_visit', '0'); 
} 
+0

ありがとうございます。これは素晴らしい。 – user1386796

+0

ボタンを押したときではなく、自動的にポップアップロードを行う方法はありますか? – user1386796

+0

$( '#announce')のコードブロックを使用します。bPopup();クリックハンドラ関数の内部ではなく、$(document).ready()の中にあります。その場合は、DOMが準備完了してすぐに起動し、クリックを待つことはありません。 :) –

関連する問題