gpt4 book ai didi

javascript - 如何启用 cookie

转载 作者:行者123 更新时间:2023-11-29 18:31:25 25 4
gpt4 key购买 nike

我的任务是读取、写入、启用 cookie,以便将用户名存储在变量中,然后写入 cookie。我的问题是代码的最后一部分似乎在工作。但是假设将用户名存储到变量中的第一部分不起作用,我可以看到当我运行代码时前两个警告框不显示。它应该以“你好,我是你的宠物摇滚”打开,在我最后一次单击 iRock 后,图像应该会变成一个快乐的 iRock。但它不会发生。我猜是因为 cookie 没有被读取。有什么建议。这是链接:http://ciswebs.smc.edu/cis54/tyson_schweidel/iRockChapter3.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org   /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>iRock - The Virtual Pet Rock</title>
<link href="donut_stylesheet/donut.css" rel="stylesheet" type="text/css" />

<script type ="text/javascript" >
var userName;

function resizeRock(){
document.getElementById("rockImg").style.height = (document.body.clientHeight - 100) * 0.9;
}

function greetUser(){
userName = readCookie("rock_username");
if(userName)
alert("Hello " + userName + ", I missed you.");
else
alert("Hello, I am your pet rock");
}

function touchRock(){
if(userName)
alert("I like attention," + userName + ". Thank you.");
}

userName = prompt("What is your name?", "Enter name here.");
if(userName)
alert("It is good to meet you, " + userName + ".");
writeCookie(irock_username", userName, 1 * 365);


document.getElementById("rockImg").src = "rock_happy.png";
setTimeout("document.getElementById(('rockImg').src = 'images/rock.png';", 5 * 60 * 1000);





</script>
</head>


<body onload="resizeRock(); greetUser(); onResize="resizeRock();">
<img id="rockImg" src="images/rock.png" alt="iRock" style="cursor:pointer" onClick="touchRock();" />
</body>
</html>

最佳答案

让我们分解一下。

How to enable cookies

至少自 2000 年以来,几乎所有浏览器都默认启用 Cookie。虽然您不能指望某人启用了 Cookie - 我认为这是家庭作业的安全假设。如今,要启用 cookie,用户必须明确将其关闭。

read, write, enable cookies so that the username will be stored in a variable and then written into a cookie

您有两个未声明的函数。正在调用 readCookiewriteCookie,但您尚未在任何地方声明它们。你需要看起来像这样的东西:

function readCookie() {
//Return the value of the cookie
}


function writeCookie(value) {
//Write the value to the cookie
}

您可以在此处详细了解 cookie 的确切含义:

http://www.quirksmode.org/js/cookies.html

以及如何读写它们。

此外,您的 HTML 和 JavaScript 中还有一些语法错误。请务必仔细检查。要寻找的东西:

  • 确保每个大括号 ({}) 都有匹配的左/右大括号。
  • 确保所有 HTML 属性值都用引号正确括起来。例如,您正文的 onload 属性似乎缺少引号。

其他提示:

不要尝试一次构建所有内容。从一个简单的任务开始,让它自己工作。例如,从设置/读取 cookie 开始,而不用担心岩石。一旦您让一项功能按照您希望的方式工作,就可以添加更多功能。

关于javascript - 如何启用 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7762369/

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