2011-06-08 170 views
2

这是一个下拉div,其中包含我的页面顶部的帐户信息。 我可以做些什么来使div保持打开状态,直到人手动关闭它为止?使div打开/关闭状态持续

我希望它保持打开,如果页面刷新或如果人导航到一个新的页面除非他们点击“注册新帐户”链接,然后我想要div关闭,该人将被重定向(通过magento)到注册页面。

$(document).ready(function() { 

    // Expand Panel 
    $(".open-js").click(function(){ 
      $("div.panel").slideDown("slow"); 
    }); 

    // Collapse Panel 
    $(".close-js").click(function(){ 
      $("div.panel").slideUp("slow"); 
    });  

    // Switch buttons from "Log In | Register" to "Close Panel" on click 
    $(".toggle-js a").click(function() { 
      $(".toggle-js a").toggle(); 
    }); 

}); 

回答

1

创建使用下面的语法在JavaScript中的cookie:如果你想有一个设置Cookie

document.cookie = 
    'examplecookie=amorrosa; expires=Thu, 2 Jul 2011 12:00:00 UTC; path=/' 

所以用户点击注册链接时(无论他们是否实际注册了注册流程),您可以将其添加到您的注册链接点击事件中:

// Switch buttons from "Log In | Register" to "Close Panel" on click 
$(".toggle-js a").click(function() { 
    $(".toggle-js a").toggle(); 
    document.cookie = 
     'examplecookie=amorrosa; expires=Thu, 2 Jul 2011 12:00:00 UTC; path=/' 
}); 

您可以在该cookie信息中包含任何类型的名称/值对,因此您可以使用“myuserinformation = user.name”或某些此类值而不是“examplecookie = amorrosa”。

要决定是否显示你的div,你会看到cookie是否存在,读取它的值(或者你可能只是检查你的cookie是否存在并显示div如果是)并显示div:

if(document.cookie) { 
    index = document.cookie.indexOf('examplecookie'); 
    if (index != -1) { 
     $('#myDiv').show(); 
    } 
}