gpt4 book ai didi

javascript - Jquery + JavaScript : Creating a cookie with toggle

转载 作者:行者123 更新时间:2023-12-03 08:23:11 25 4
gpt4 key购买 nike

我正在尝试创建一个 cookie,因此如果:

一旦暴风雪效果停止,就会按下“切换”,并且还会生成一个cookie,因此如果用户刷新页面,它将不会运行。如果他们再次“切换”它,暴风雪效果将会开始,并且 cookie 会被删除。

目前,我查看了http://www.w3schools.com/js/js_cookies.asp我需要使用以下功能:

document.cookie="name";

function get_cookie(name){
var x = name;
}

function delete_cookie( name ) {
document.cookie = name;
}

所以我可以有类似伪代码的东西:

$("#Snow").click(function () {

snowStorm.toggleSnow()

// Generate a cookie here and returns it //
// Selected again, cookie is deleted //

});


$(document).ready(function(){
$("#Winter").click(function(){

// Gets the cookie and doesn't run the snowStorm.resume
// If no cookie, runs it.


snowStorm.resume()


});

有人可以向我展示一个在单击时创建 cookie 并在再次单击时删除的示例吗?

我不知道如何执行此步骤。我想到使用 bool 变量并更改更改,当单击 X 设置为 true 时,如果再次单击 X 设置为 false - 然后我可以有一种删除或设置的方法。

最佳答案

为了更简单,您可以创建一次并切换其(而不是其存在)来打开/关闭雪。

你可以试试这个:

// this getCookie() function is copied from W3Schools
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
}
return "";
}

// initialization
var on = getCookie("snow");
if(on == "") {
document.cookie = "snow=true";
start();
} else {
(on == "true") ? start() : stop();
}

// toggling
$("#Winter").click(function() {
if(getCookie("snow") == "true") {
stop();
document.cookie = "snow=false"; // overwrite the cookies to change them
} else {
start();
document.cookie = "snow=true";
}
});

请参阅working example在 JSFiddle.net 上。

关于javascript - Jquery + JavaScript : Creating a cookie with toggle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33660457/

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