使用jquery toggle()和$ .cookie()进行意外的状态切换

时间:2013-12-25 08:16:52

标签: jquery wordpress toggle jquery-cookie

单击more / prev按钮可以正常工作。甚至在刷新浏览器时$ .cookie() 在维持国家方面做得很好。但是当我点击缩略图时,一些图像会混淆cookie,因此页面就像点击了更多/上一个按钮一样。如果可以的话请帮忙。其他提示表示赞赏。

Wordpress HTML:

<div id="fp" class="gal">
  <h4>Recent Work</h4>
  [gallery columns="4" ids="7,8,187,6,9,10"]
  <h4>7 Deadly Sinners and The 7 Heaven Sent</h4>
  [gallery columns="4" ids="11,12,13,14,15,16,17,18,19,20,21,22,23,24"]
</div>

<div id="sp" class="gal">
 <h4>The Book Of Eye Characters</h4>
 [gallery columns="4" link="post" ids="26,27,28,29,30,31,32,33,34,25"]
</div>

JQuery的:

<script src="<?php echo TEMPPATH;?>/scripts/jquery.cookie.js"></script>
<script>

$(document).ready(function () {
    $('<span id="more" class="paging">more</span>').insertAfter('#this');
    if ($.cookie("page1") == "n") {
        $("#fp").hide();
    } else {
        $("#sp").hide();
    }
    $("#more").click(function () {
        $(".gal").toggle("slow", function () {
            if ($('#fp').is(":visible")) {
                $.cookie("page1", "y");
                $('#more').html("more");
            } else {
                $.cookie("page1", "n");
                $('#more').html("prev");
            }
        });
    });
});
</script>

1 个答案:

答案 0 :(得分:1)

我认为问题出在你的cookie创建中。 在创建Cookie时,添加{ path: '/' },就像这样

$.cookie('page1', 'y', { path: '/' });

因此,cookie将跨越整个网站而不是每页,就像其默认行为一样。