IE8开箱即用是否支持'localStorage'

Spi*_*man 50 html javascript html5 internet-explorer internet-explorer-8

我正在尝试使用HTML5功能localStorage.根据这篇博客,它可以使用IE8完成,但是当我尝试使用它时,我收到一个javascript错误'localStorage is null or not an object'

所以我的问题:localStorage开箱即用的IE8可以使用吗?这是我的代码:

<!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="X-UA-Compatible" content="IE=8" />
    <title>IE8 - DOM Storage</title>
    <script type="text/javascript"> 
        function Save() {
            localStorage.setItem('key','value');            
        }        
    </script>
</head>
<body>        
    <button onclick="Save();">
        Save
    </button>  
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

mat*_*sta 56

它确实支持localStorage,但你需要处于IE8模式(这在IE7模式下不起作用).

要检查您是否在IE8模式下工作,请加载开发人员控制台.在顶部,确保选择了IE8模式.标准模式也不错.

您还需要确定的一件事是您正在使用HTML5文档类型.您不应该使用具有HTML5功能的XHTML doctype.

<!DOCTYPE html>
Run Code Online (Sandbox Code Playgroud)

使用此doctype不应影响您的浏览器支持.

另外,请确保您访问window.localStorage.它应该不是一个问题,但已知IE可以承载更奇怪的问题.也许它正在寻找一个本地范围的localStorage对象?谁知道.

  • PPK和我的研究表明localStorage在IE8的兼容模式下运行良好. (6认同)
  • 当我在Web应用程序中使用它而不是通过打开它工作的硬盘文件 (6认同)

Spi*_*man 7

musicfreak的评论是正确的.由于此功能需要域,因此我必须仅通过实时URL(至少是localhost)使用它,而不是通过将其作为磁盘中的文件打开.

没有必要添加,window.localStorage因为IE8也可以识别localStorage.

  • @activars蜘蛛侠从未声称过. (3认同)