Jquery cookie 插件 - 如何为显示/打开元素设置 cookie

发布于 2024-11-06 07:47:14 字数 1220 浏览 0 评论 0原文

当我从页面导航到另一页面时,我需要记住哪个块已打开 这是可折叠的导航菜单。div“块”内容内部有链接。

<script type="text/javascript">
    <!--//--><![CDATA[//><!-- 

    $(document).ready(function () {
    $('.acc_container').hide(); 
    $('.acc_trigger:first').addClass('active').next().show(); 

    $('.acc_trigger').click(function(){
        if( $(this).next().is(':hidden') ) { 
            $('.acc_trigger').removeClass('active').next().hide(); 
            $(this).toggleClass('active').next().show();
        }
        return false; 
    });
    });

    //--><!]]>
    </script>


<h2 class="acc_trigger"><a href="#">Messages</a></h2>
    <div class="acc_container">
          <div class="block">content1    </div>
        </div>
    <h2 class="acc_trigger"><a href="#">Categories</a></h2>
        <div class="acc_container">
          <div class="block">content2    </div>
        </div>
.....
<h2 class="acc_trigger"><a href="#">Clients</a></h2>
        <div class="acc_container">
          <div class="block">content10   </div>
        </div>

When I navigate away from page to another one I need to remember whitch block is open
This is colapsible mavigation menu.The div 'block' content has links inside.

<script type="text/javascript">
    <!--//--><![CDATA[//><!-- 

    $(document).ready(function () {
    $('.acc_container').hide(); 
    $('.acc_trigger:first').addClass('active').next().show(); 

    $('.acc_trigger').click(function(){
        if( $(this).next().is(':hidden') ) { 
            $('.acc_trigger').removeClass('active').next().hide(); 
            $(this).toggleClass('active').next().show();
        }
        return false; 
    });
    });

    //--><!]]>
    </script>


<h2 class="acc_trigger"><a href="#">Messages</a></h2>
    <div class="acc_container">
          <div class="block">content1    </div>
        </div>
    <h2 class="acc_trigger"><a href="#">Categories</a></h2>
        <div class="acc_container">
          <div class="block">content2    </div>
        </div>
.....
<h2 class="acc_trigger"><a href="#">Clients</a></h2>
        <div class="acc_container">
          <div class="block">content10   </div>
        </div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野の 2024-11-13 07:47:14

试试这个:

$(document).ready(function () {
    $('.acc_container').hide(); 
    $('.acc_trigger')
      .eq( $.cookie('activeTrigger'))//<!-- read index from cookie
        .addClass('active').next().show(); 

    $('.acc_trigger').click(function(){
       $.cookie('activeTrigger',$('.acc_trigger').index(this));//<!-- set the cookie
        if( $(this).next().is(':hidden') ) { 
            $('.acc_trigger').removeClass('active').next().hide(); 
            $(this).toggleClass('active').next().show();
        }
        return false; 
    });
    });

它将 onclick 将 $('.acc_trigger') 中单击的项目的索引存储到 cookie 中,稍后它使用该索引通过 $().eq( )

Try this:

$(document).ready(function () {
    $('.acc_container').hide(); 
    $('.acc_trigger')
      .eq( $.cookie('activeTrigger'))//<!-- read index from cookie
        .addClass('active').next().show(); 

    $('.acc_trigger').click(function(){
       $.cookie('activeTrigger',$('.acc_trigger').index(this));//<!-- set the cookie
        if( $(this).next().is(':hidden') ) { 
            $('.acc_trigger').removeClass('active').next().hide(); 
            $(this).toggleClass('active').next().show();
        }
        return false; 
    });
    });

It stores onclick the index of the clicked item inside $('.acc_trigger') to a cookie , later it uses this index to select this item via $().eq()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文