在jsfiddle.net上工作但不在我的笔记本电脑上?

时间:2013-12-04 07:08:58

标签: javascript jsfiddle

请看http://jsfiddle.net/fLd5T/

这个在jsfiddle.net上运行良好的简单javaScript代码在我的笔记本电脑上无效。

以下是我笔记本电脑上的代码:

<HTML>
<HEAD>
<script type="text/javascript">
// setup
var goal = "fix the bug";
var date2 = new Date();
var diff = 0;
var active = true;http://jsfiddle.net/#save
var data = '{"goals": [{"goal":"' + goal + '","duedate":"'
    + date2 + '","noofdays":"' + diff + '","active":"'
    + active + '"}]}';
localStorage.setItem("goals",data);

// test
var goalsStr = localStorage.getItem("goals");
var goalsObj = JSON.parse(goalsStr); 
for (i=0; i<goalsObj.goals.length; i++) {
  //if(goal==goalsObj.goals[i].goal) {
    document.body.appendChild(document.createTextNode(
        "The goal is " + JSON.stringify(goalsObj.goals[i])));
  }
}
</script>
</HEAD>
<BODY>
</BODY>
</HTML>

我的浏览器启用了javaScript。

为什么会这样?怎么了?我该怎么办?

1 个答案:

答案 0 :(得分:0)

当我检查你的代码时,我看到两件事:

首先在第18行注释if语句,但结束}不会导致语法错误。

另一件事是您在创建之前尝试访问document.body 。您应该将{j}代码(整个<script>...</script>)移到<body></body>而不是<head></head>

您还可以在JavaScript代码周围添加window.onload = function () { ... } 它正在研究jsfiddle,因为那是它实际上在那里完成的。