1

bpopup を使用して、ホームページに全画面ポップアップを正常に追加しました。

それはうまく機能しますが、ボタンが押されたときにのみ機能します。ユーザーが初めてサイトにアクセスするたびに、ポップアップがホームページに表示され、ホームページのみに表示されるようにします。

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

<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>

これはうまく機能しますが、Cookie 関連のハンドラーを追加するにはどうすればよいですか?

助けてくれてありがとう。本当に感謝しています。

4

3 に答える 3

0

quirksmodeから:

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);

を使用してその Cookie が設定されているかどうかを確認しreadCookie()ます。

于 2012-05-10T10:20:21.593 に答える
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

ページが読み込まれると、Cookieの値が次のようにチェックされます

var showDialog=$.cookie("test");
if(showDialog==1)
//showDialog
于 2012-05-10T10:22:06.430 に答える
0

このCookie プラグインを使用してコードに条件を追加し、Cookie が既に存在するかどうかを確認できます。このような

if($.cookie('first_visit') != '0'){
    //Show modal as Cookie is not set
    $('#announce').bPopup();
    // now set cookie 
    $.cookie('first_visit', '0'); 
}
于 2012-05-10T10:26:17.720 に答える