Javascript 这是对发布的启用cookies的重复,有人希望我为清晰起见重新提交

Javascript 这是对发布的启用cookies的重复,有人希望我为清晰起见重新提交,javascript,Javascript,可能重复: readCookie位于greetUser函数的正下方。我输入了writeCookie函数,但它会导致警报框不显示。所以我把它注释掉了 这是关于饼干不起作用的。我假设将用户名排序为一个变量,以便iRock记住用户名并在提示中使用它 代码的最后一部分似乎有效,因为我得到了警报框,但我没有得到第一个和第二个警报框。该页面应该在一个警告框中打开,说:你好,我是一个宠物石。但事实并非如此 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra

可能重复:

readCookie位于greetUser函数的正下方。我输入了writeCookie函数,但它会导致警报框不显示。所以我把它注释掉了

这是关于饼干不起作用的。我假设将用户名排序为一个变量,以便iRock记住用户名并在提示中使用它

代码的最后一部分似乎有效,因为我得到了警报框,但我没有得到第一个和第二个警报框。该页面应该在一个警告框中打开,说:你好,我是一个宠物石。但事实并非如此

<!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>
JavaScript中没有内置的readCookie或writeCookie函数。你必须自己供应


好的阅读:writeCookie和readCookie在哪里定义?另外,在writeCookie行上有一个错误,在onload属性结束后缺少一个。这是作业,我发现我们作业的某些方面与现实世界中发生的不匹配。
function writeCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    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,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}