1

我正在考虑编写一个 JS 包装器,以便localStorage在使用 HTML 4 的旧网站上拥有一个 HTML 5 对象,因为每个人都说它仅适用于 HTML 5。所以我写了这个简单的页面

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
        <script type="text/javascript">
            console.log(localStorage);
        </script>
    </body>
</html>

...我希望控制台能给我一个undefined这样我就可以开始实施了。但它只是显示了本地存储对象,我可以正常使用!我在最新版本的 Chrome、Safari 和 Firefox 上尝试过它,它可以正常工作。

所以我的问题是:

localStorage无论说明 HTML4 或 HTML5 的文档类型如何,我是否遗漏了某些内容或在现代浏览器中可用?

只是不知道这行得通吗?对我有用...但是为什么每个人都在谈论 HTML 5 是一个要求呢?我没有找到任何说明这仅适用于 HTML4 的来源。

4

2 回答 2

7

localStorage 归因于 HTML 5 的原因不是因为 HTML 5 文档类型,而是因为它需要兼容 HTML 5 的浏览器。浏览器确定是否存在用于创建和维护本地存储的功能。

有关客户端存储的一些有趣信息,请参阅以下链接: https ://developers.google.com/web-toolkit/doc/latest/DevGuideHtml5Storage

于 2013-05-22T20:54:11.627 回答
0

Web Storage 被认为是 HTML 5 规范的一部分。然而,从那时起,HTML5 和 Web 存储作为单独的标准同时开发,这两个标准都还没有最终确定。因此,Web Storage 可以使用旧版本的 HTML,但只有现代浏览器可以支持任一标准。

于 2013-10-18T15:22:42.003 回答