gpt4 book ai didi

javascript - jQuery:关闭浏览器时删除cookie( session cookie)

转载 作者:行者123 更新时间:2023-12-02 18:28:22 28 4
gpt4 key购买 nike

听起来很简单,我认为它应该很简单,但不知何故我无法让它工作......

我想使用 Javascript 设置 Cookie,并且当用户退出浏览器时应删除该 Cookie。设置cookie并获取值不是问题。但是当我退出浏览器并重新打开它时,cookie 仍然存在(Firefox)。

我使用 jQuery 和 Cookie-Plugin .

这是我的测试代码:

$(document).ready(function(){
$('#output').append( '<li>initialize...</li>' );

var $cookieVal = $.cookie('testCookie');

$('#output').append( '<li>check cookie...</li>' );

if(!$cookieVal) {
$('#output').append( '<li>set cookie...</li>' );
$.cookie('testCookie', 'eat cookies', { path: '/' });
//console.log( $.cookie() );
} else {
$('#output').append( '<li>cookie is already set...</li>' );
$('#output').append( '<li>cookie value: '+$.cookie('testCookie')+'</li>' );
}
});

请在 jsFiddle 找到工作示例.

最佳答案

我开始怀疑您的测试方法是否可能是这里的问题。所以,我要以一种具体的方式来写这个。

实际答案:浏览器设置

在 Firefox 中,选项>常规>当 Firefox 启动时>“显示上次的窗口和选项卡”将保留您之前的 session 。更改此设置以查看它是否确实按预期工作。 Firefox 正在延长您的 session 时间。有关更多信息,请参阅此“错误”:http://bugzilla.mozilla.org/show_bug.cgi?id=530594

大多数浏览器中都有类似的设置,其行为方式可能相同。


原始答案:

我创建了一个 fiddle ,http://jsfiddle.net/8Ahg2/使用 document.cookie 而不是 jquery cookie 插件。以下是测试方法。 (来源如下)

  1. 将以下网址复制到剪贴板:http://fiddle.jshell.net/8Ahg2/show/
  2. 完全关闭您选择的浏览器 - 这应该与浏览器无关。
  3. 打开浏览器,粘贴网址。第一次应该说:检查cookie...
    设置cookie...
  4. 刷新页面,注意它现在应该显示 cookie 的值(“test”)
  5. 再次完全关闭浏览器。
  6. 导航至仍应位于剪贴板中的网址。 *第一次查看时不要刷新页面,它应该再次显示“检查 cookie...”
    设置 cookie...
    '


js

$(document).ready(function () {
$('#output').append('<li>initialize...</li>');
//this regex gets the "name" cookie out of the string of cookies that look like this: "name=test;var2=hello;var3=world"
var cookieVal = document.cookie.replace(/(?:(?:^|.*;\s*)name\s*\=\s*([^;]*).*$)|^.*$/, "$1");

$('#output').append('<li>check cookie...</li>');

if (!cookieVal) {
$('#output').append('<li>set cookie...</li>');
document.cookie = "name=test";
} else {
$('#output').append('<li>cookie is already set...</li>');
$('#output').append('<li>cookie value: ' + cookieVal + '</li>');
}
});

关于javascript - jQuery:关闭浏览器时删除cookie( session cookie),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18111498/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com