1

我正在处理一个本地 html 文件,存储在 Win7 机器上并在 IE 9 中打开。这个 html 文件使用 javascript 和 jStorage。

但是,当我运行时,我收到错误“SCRIPT5007:无法获取属性'set'的值:对象为空或未定义。” 此错误指向该语句$.jStorage.set("Key", "Hello");

我究竟做错了什么?我已经尽可能地简化了 html 和 javascript,以缩小范围。

这是html:

<!DOCTYPE html>
<html>
    <head>
    <title>Backlog Tracker</title>
    <script src="jquery-2.1.1.min.js"></script>
    <script src="json2.js"></script>
    <script src="jstorage.min.js"></script>
    <script src="backlog.js"></script>
    </head>
    <body>
    </body>
</html>

...而且,这是脚本(在 html 中引用为“backlog.js”):

$(document).ready(function(){
    $("body").append("<button>Try It</button>");
    $("button").click(function(){
    $.jStorage.set("Key", "Hello");
    console.log($.jStorage.get("Key"));
    });
});

作为旁注,我已经阅读了关于 SO 的其他问题,例如这里,但似乎没有什么可以解释这一点。参考这里的jStorage 用法,一切似乎都井井有条。由于这个 SO answer,我最初被指向 jStorage 。

4

1 回答 1

1

localStorage 不适用于 IE 中的本地文件。它在 Chrome 中可以,但在 IE 中没有。

<!DOCTYPE html>如果您有并且<meta http-equiv="X-UA-Compatible" content="IE=edge;chrome=1" />在您的文档中,IE 9 也支持 JSON 。

尝试运行一个小型本地 Web 服务器。

于 2014-06-17T07:27:25.720 回答