HTML5代码在IE9中不起作用

时间:2012-06-06 14:24:23

标签: html5 internet-explorer-9 local-storage

以下简单代码适用于Firefox(12.0),但在IE 9中似乎不起作用,即使IE9支持本地存储。请注意alert(localStorage.lastname);没有显示任何结果。想知道在IE9中使用localStorage是否存在已知问题,因为文档确实说它受支持。

   <!DOCTYPE html>
    <html>
    <body>
    <script> 
    if(typeof(Storage)!=="undefined")
    {
      alert('local storage')
      localStorage.lastname="Smith";
      alert(localStorage.lastname);  
    }
     else
    {
     alert("Sorry, your browser does not support web storage...")
    }
   </script>
   </body>
   </html>

3 个答案:

答案 0 :(得分:2)

永远不要直接在localstorage中设置/获取项目!使用适当的方法:

localStorage.setItem(key,value)
localStorage.getItem(key)
localStorage.removeItem(key)

这可以修复您的IE问题,您将幸福地生活:-D

(注意,这些值存储为字符串!)

答案 1 :(得分:0)

如果您在Web服务器上托管HTML文件,您的代码将在IE上正常运行。

如果您在IE中打开file:// url,则localStorage将是未定义的 尝试用if确认(typeof( localStorage )!==“undefined”) 你会得到“抱歉,你的浏览器不支持网络存储...”

答案 2 :(得分:0)

实际上,它甚至无法通过网络服务器工作。我正在websphere应用服务器上运行一个Web应用程序,我在ie9上遇到了同样的问题。它在chrome上工作正常。

您可以尝试此页面上的内容:http://html5doctor.com/storing-data-the-simple-html5-way-and-a-few-tricks-you-might-not-have-known/