localStorage Javascript代码可以在HTML文件中工作,但不能在Javascript文件中工作,我已经尝试了很多StackOverflow解决方案

问题描述 投票:0回答:1

我正在尝试使用基本的本地存储方法。它们可以在 HTML 中完美查找,但不能在独立的 Javascript 文件中工作。

HTML 代码(有效):

<!DOCTYPE html>
<html>
    <head>
        <title>Test Javascript</title>
        <meta name="description" content="Our first page">
        <meta name="keywords" content="html tutorial template">

        <script>
            document.addEventListener("DOMContentLoaded", function(event) {
            localStorage.setItem("Name", "Jeff");
            console.log(localStorage.getItem("Name"));
            });
        </script>
    </head>
    <body>
        Content goes here.
    </body>
</html>

JS 代码(不起作用):

document.addEventListener("DOMContentLoaded", function(event) {
    localStorage.setItem("Name", "Jeff");
    console.log(localStorage.getItem("Name"));
});

document.addEventListener("load", function() {
    localStorage.setItem("Name", "Jeff");
    console.log(localStorage.getItem("Name"));
});

document.addEventListener("DOMContentLoaded", function() {
    localStorage.setItem("Name", "Jeff");
    console.log(localStorage.getItem("Name"));
}, false);

window.onload = function() {
    localStorage.setItem("Name", "Jeff");
    console.log(localStorage.getItem("Name"));
}

以下是我尝试过的解决方案:

使用

document.addEventListener("DOMContentLoaded", function(event) {});

使用

document.addEventListener("load", function() {});

使用

document.addEventListener("DOMContentLoaded", function() {}, false);

使用

window.onload = function() {}

使用

window.onload = function() {}
(再次)

使用

window.onload = function() {}
(再次...)

运行 js 文件时,我仍然得到相同的结果:localStorage 中没有任何反应,并且我在控制台中看不到任何内容。

我不知道从这里去哪里,任何帮助将不胜感激。

javascript html dom firefox local-storage
1个回答
0
投票

Web 浏览器仅在加载了

<script>
元素的 HTML 文档上下文中执行 JavaScript(
src
属性允许从 URL 加载脚本,而不是嵌入到 HTML 文档中)。

(让我们忽略浏览器扩展、将内容粘贴到开发人员工具和书签中,因为它们与此处无关)。

只需输入 JavaScript 程序的 URL 即可使其源代码显示在主视口中。它不会执行代码。没有办法让它执行 HTML 文档之外的代码。

© www.soinside.com 2019 - 2024. All rights reserved.