【问题标题】:Detect Chrome restart from client javascript从客户端 javascript 检测 Chrome 重启
【发布时间】:2013-06-10 16:20:47
【问题描述】:

如何在客户端检测用户是否刚刚重新打开了启用“从上次中断的地方继续”的 chrome?

我想根据用户是否只是来自相关页面来修改客户端行为。重新打开浏览器不应激活此行为,但会保留 document.referrer

【问题讨论】:

  • 您找到解决方案了吗?

标签: javascript web-applications


【解决方案1】:

您可以使用 Cookie。 cookie 存储在客户端,可以通过 javascript 设置和检索它们(如果浏览器配置允许)。这里有使用 javascript 设置 ang 获取 cookie 的示例。

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;  /*  In this line you set the value */
}

function getCookie(c_name)
{
var c_value = document.cookie;
var c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1)
  {
  c_start = c_value.indexOf(c_name + "=");  /* In this line you get the key */
  }
if (c_start == -1)
  {
  c_value = null;
  }
else
  {
  c_start = c_value.indexOf("=", c_start) + 1;
  var c_end = c_value.indexOf(";", c_start);
  if (c_end == -1)
  {
c_end = c_value.length;
}
c_value = unescape(c_value.substring(c_start,c_end));  /* In this line you get the value */
}
return c_value;
}

您可以在这里获取更多信息:http://www.w3schools.com/js/js_cookies.asp

【讨论】:

  • 不,这不起作用。请参阅this bug(与 Chrome 相同的问题/功能)。使用“从上次中断的地方继续”时,会话 cookie 会在浏览器重新启动时被删除。 sessionStorage 也是如此。
猜你喜欢
  • 1970-01-01
  • 2012-11-22
  • 2020-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多