首页 > 解决方案 > 如何在单击按钮时向 cookie 值添加 +1

问题描述

我真的需要你的帮助,我知道这对你来说很容易。我制作了以下代码,通过加载我网站的每个页面来显示模式引导程序。但我需要向每个用户展示该模式 3 次。所以我需要计算用户点击按钮关闭模式的次数。如果用户 3 次关闭了模式,我不想再次向他显示模式(弹出窗口)。我想通过 cookie 来做到这一点,但我的代码不起作用,我使用 c ookie 插件来使用 JQuery Bootstarp Modal

谢谢大家帮助我。

我的 HTML 代码

<!-- Modal -->
        <div id="hereiakarneta" class="modal fade" role="dialog">
          <div class="modal-dialog">
            <div class="modal-content">
              <div class="modal-header">
                <button type="button" class="close" id="AcceptMyGiftClose" data-dismiss="modal">&times;</button>
                <h4 class="modal-title" style="text-align: center;" >From Me To You</h4>
              </div>
              <div class="modal-body">

                <div class="hikmywords">
                    <img src="" class="img-responsive" alt="">
                    <ul>
                        <li><h5>my gift to you</h5></li>
                        <li>
                            <p>click on the button and download my gift</p>
                        </li>
                    </ul>
                </div>

              </div>
              <div class="modal-footer">
                <p><a>My Gift</a></p>
              </div>
            </div>
          </div>
        </div>  

我的 jQuery 代码

jQuery(document).ready(function($) {
    var VisitPopupGift = $.cookie('AcceptMyGift');
    if ( !$.cookie('AcceptMyGift') ) {

        $('#hereiakarneta').modal({
            show: true,
            backdrop: 'static',
            keyboard: false, 
        })
        $("#AcceptMyGiftClose").click(function() {
            VisitPopupGift = 1;
            $.cookie('AcceptMyGiftOnce', VisitPopupGift, {
                expires: 30,
                path: '/',
            });
            $(".hereiakarneta").fadeOut('fast');
        });

    } else { 
        if ( VisitPopupGift < 5 ) {
        $('#hereiakarneta').modal({
            show: true,
            backdrop: 'static',
            keyboard: false, 
        })
        $("#AcceptMyGiftClose").on("click",function(){
            //VisitPopupGift++;
            VisitPopupGift++;
            $.cookie('AcceptMyGiftOnce', VisitPopupGift, {
                expires: 30,
                path: '/',
            });
            $(".hereiakarneta").fadeOut('fast');
        });
        }
    }
});

标签: javascriptjquerybootstrap-modal

解决方案


由于我对 JQuery 不熟悉,所以我想到的是,设置一个为每次点击计数的计数器,然后设置一个 if else 语句,在 if 语句中,如果计数器小于或等于三,则显示模态,否则关闭它或隐藏它。


推荐阅读