Javascript ';存储';在IE9中没有定义

Javascript ';存储';在IE9中没有定义,javascript,html,Javascript,Html,可能重复: 下面的代码告诉我SCRIPT5009:“存储”在IE9中未定义。它可以在Chrome、Safari和Firefox中使用 Storage.prototype.setObject = function(key, value) { this.setItem(key, JSON.stringify(value)); } udpate我从Apache服务器提供页面服务,而不是从本地文件系统访问页面,因此以下内容不适用: 更新2发现问题,请查看我的答案。在这里猜测 IE 9在本

可能重复:

下面的代码告诉我
SCRIPT5009:“存储”在IE9中未定义。它可以在Chrome、Safari和Firefox中使用

Storage.prototype.setObject = function(key, value) {
    this.setItem(key, JSON.stringify(value));
}

udpate我从Apache服务器提供页面服务,而不是从本地文件系统访问页面,因此以下内容不适用:

更新2发现问题,请查看我的答案。

在这里猜测

IE 9在本地文件系统上运行时似乎不支持本地存储:

更多详细信息可在此处找到:

因此,您可以在外部服务器上运行它,也可以检查脚本中是否支持它:

if ("localStorage" in window && window["localStorage"] != null) {

    // Local storage supported

}
在这里猜

IE 9在本地文件系统上运行时似乎不支持本地存储:

更多详细信息可在此处找到:

因此,您可以在外部服务器上运行它,也可以检查脚本中是否支持它:

if ("localStorage" in window && window["localStorage"] != null) {

    // Local storage supported

}

发现了问题。我必须指定DOCTYPE
,即使其他浏览器不关心IE

感谢@Rocket Hazmat指出了这一点


没有DOCTYPE,即进入怪癖模式。使用DOCTYPE,IE进入标准模式。我的猜测是IE需要处于标准模式才能访问HTML5功能

找到了问题。我必须指定DOCTYPE
,即使其他浏览器不关心IE

感谢@Rocket Hazmat指出了这一点


没有DOCTYPE,即进入怪癖模式。使用DOCTYPE,IE进入标准模式。我的猜测是IE需要处于标准模式才能访问HTML5功能

页面上有DOCTYPE吗?页面是否在“兼容模式”下运行?我没有指定DOCTYPE。它有“怪癖”mode@dev.e.loper:这可能就是问题所在。它需要在“IE9模式”下运行。或者我从Apache服务器提供页面服务,而不是从本地文件系统访问页面。页面上有DOCTYPE吗?页面是否在“兼容模式”下运行?我没有指定DOCTYPE。它有“怪癖”mode@dev.e.loper:这可能就是问题所在。它需要在“IE9模式”下运行。或者我从Apache服务器提供页面,而不是从本地文件系统访问页面。我从Apache服务器提供页面,而不是从本地文件系统访问页面。另外,我相信IE9支持存储是的,它支持!但它似乎不在本地文件系统上。这是我的猜测;)我从Apache服务器提供页面服务,而不是从本地文件系统访问它。另外,我相信IE9支持存储是的,它支持!但它似乎不在本地文件系统上。这是我的猜测;)