5

这是我现在的代码:

<script type="text/javascript">
        $(document).ready(function() {

            if($.cookie('msg') == 0)
            {
                $('#myModal').modal('show');
                $.cookie('msg', 1);
            }

        });
</script>

在页面加载模型显示但当我刷新它一直显示它应该只显示一次。$.cookie 来自https://github.com/carhartl/jquery-cookie

更新:

这行得通:“隐藏”由于某种原因不起作用

<script type="text/javascript">
        $(document).ready(function() {
            if($.cookie('msg') == null)
            {
                $('#myModal').modal('show');
                $.cookie('msg', 'str');
            }
            else
            {
                $("div#myModal.modal").css('display','none');
            }


        });

</script>
4

2 回答 2

6

@SarmenB 的更新适用于大多数浏览器(FF、IE9),但不适用于 IE8。

我修改了他更新的解决方案,让它在 IE8 中工作......

这是@SarmenB 的解决方案:

<script type="text/javascript">
    $(document).ready(function() {
        if($.cookie('msg') == null)
        {
            $('#myModal').modal('show');
            $.cookie('msg', 'str');
        }
        else
        {
            $("div#myModal.modal").css('display','none');
        }
    });
</script>

这是我想出的修改后的解决方案,它也适用于 IE8

<script type="text/javascript">
    $(document).ready(function() {
        if($.cookie('msg') != null && $.cookie('msg') != "")
        {
            $("div#myModal.modal, .modal-backdrop").hide();
        }
        else
        {
            $('#myModal').modal('show');
            $.cookie('msg', 'str');
        }
    });
</script>

基本上为了让它在 IE8 中工作,我不得不反转 if/else 语句中的内容。

于 2012-12-13T17:19:20.967 回答
0

从库的外观来看,该值应该是一个字符串。尝试:

<script type="text/javascript">
        $(document).ready(function() {

            if($.cookie('msg') == null)
            {
                $('#myModal').modal('show');
                $.cookie('msg', '1');
            }

        });
</script>
于 2012-06-14T03:19:22.143 回答