gpt4 book ai didi

javascript - Cookie 仅适用于 Firefox

转载 作者:行者123 更新时间:2023-11-28 07:25:04 25 4
gpt4 key购买 nike

我一直在做一个项目,在项目中,我决定制作一个移动版本的网站。

我想要做的是设置一个 cookie,暂时(20 分钟)“禁用”页面加载时查看的欢迎消息。

cookie 的问题是它在 Chrome 或 Opera 上都不起作用,但在 Firefox 上却可以。

不知道问题出在哪里。有人可以指出我正确的方向吗?我对网络开发有点陌生。

代码如下:

欢迎功能:

function welcome1 () {
$('.message').each(function(i) {
$(this).delay((i++) * 2000).fadeTo(700, 1);
$(this).delay(1400).fadeOut(300);
}),
setTimeout(function() {
$('.solar-body').each(function(i) {
$(this).delay((i++) * 200).fadeTo(400, 1);
})
}, 5000);
}

Cookie:

    // c_name = cookie name
// c_value = cookie value
// ex_min = expiration in minutes
function setCookie(c_name, c_value, ex_min) {
var d = new Date();
d.setTime(d.getTime() + (ex_min * 60 * 1000));
var expires = "expires="+d.toUTCString();
document.cookie = c_name + "=" + c_value + "; " + expires;
}

加载函数:

function welcomeMessage() {
var lastVisitedCookieName = 'last-visited';
if (!document.cookie.contains(lastVisitedCookieName)) {
welcome1();
setCookie(lastVisitedCookieName, "1", 20);
}
else if (document.cookie.contains(lastVisitedCookieName)) {
setTimeout(function() {
$('.solar-body').each(function(i) {
$(this).delay((i++) * 200).fadeTo(400, 1);
})
}, 500);
}
}

感谢任何帮助。

最佳答案

地址栏中的 URL 是什么样的?如果它以 file:// 开头,那就是问题所在。您需要运行本地服务器(因此 URL 变为例如 http://localhost:8000/)才能正确测试您的网站。

<小时/>

更新:问题可能是您正在使用String.prototype.contains。在规范中它已被重命名为String.prototype.includes,并且只有 Firefox 仍然支持旧的形式。使用a polyfill ,或使用 .indexOf()> -1 (这样它可以在所有浏览器中工作,包括旧浏览器)。

附注既然您无论如何都在使用 jQuery,并且为了更轻松地使用 cookie,为什么不使用 the jQuery cookie plugin

关于javascript - Cookie 仅适用于 Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29770185/

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