IE关闭浏览器后进行注销

时间:2015-05-13 13:28:24

标签: javascript internet-explorer cookies

我喜欢网站,当用户登录并检查时,请记住我"我写了cookies用户名。它工作得很好,但只是在某些浏览器中。 我在cookie用户名中写的代码:

  document.cookie = "";
  document.cookie = "username=" + username;

登录后我从cookies中检查用户名。 但在IE浏览器中,它无法正常工作。 关闭浏览器并再次打开他做饼干清除。 为什么会这样? 以及如何解决它?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

我找到了很好的get / set cookies代码:

function setCookie(c_name,value,exdays)
    {
      var exdate=new Date();
      exdate.setDate(exdate.getDate() + exdays);
      var c_value=escape(value) + 
        ((exdays==null) ? "" : ("; expires="+exdate.toUTCString()));
      document.cookie=c_name + "=" + c_value;
    }

    function getCookie(c_name)
    {
     var i,x,y,ARRcookies=document.cookie.split(";");
     for (i=0;i<ARRcookies.length;i++)
     {
      x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
      y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
      x=x.replace(/^\s+|\s+$/g,"");
      if (x==c_name)
      {
       return unescape(y);
      }
     }
    }

来源:How do I create and read a value from cookie?

谢谢你heru-luin

答案 2 :(得分:1)

查看官方MS Developer Network文档 - &gt;的 https://msdn.microsoft.com/en-us/library/ms533693%28v=vs.85%29.aspx

  

如果您未在Cookie上设置过期日期,则会在浏览器时过期   关闭 即可。如果您设置了到期日期,则会保存Cookie   浏览器会话。如果您在过去设置过期日期,则   cookie已删除。使用格林威治标准时间(GMT)格式指定   日期。

因此,如果您希望cookie在IE中持久存在,您基本上需要指定过期日期。上面链接中的示例:

// Create a cookie with the specified name and value.
function SetCookie(sName, sValue)
{
  document.cookie = sName + "=" + escape(sValue);
  // Expires the cookie in one month
  var date = new Date();
  date.setMonth(date.getMonth()+1);
  document.cookie += ("; expires=" + date.toUTCString()); 
}

或者看到这个优秀的答案 - &gt; Using javascript to set cookie in IE