Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome扩展仅在刷新页面后加载_Javascript_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript Chrome扩展仅在刷新页面后加载

Javascript Chrome扩展仅在刷新页面后加载,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我试图创建一个chrome扩展,它从一个隐藏的输入元素中获取一个数字,并注入一个显示该数字的html表。但是,只有在我刷新页面后才加载扩展。我从中获取数据的网页是完全静态的,没有什么新奇的东西。只是一个基本的HTML页面。当我第一次进入页面时,是我得到的错误。当我刷新它时,一切都按它应该的方式运行 下面是清单文件的外观 { "name": "Extension name", "version": "1.0&qu

我试图创建一个chrome扩展,它从一个隐藏的输入元素中获取一个数字,并注入一个显示该数字的html表。但是,只有在我刷新页面后才加载扩展。我从中获取数据的网页是完全静态的,没有什么新奇的东西。只是一个基本的HTML页面。当我第一次进入页面时,是我得到的错误。当我刷新它时,一切都按它应该的方式运行

下面是清单文件的外观

{
    "name": "Extension name",
    "version": "1.0",
    "description": "Extension description",
    "content_scripts": [
        {
            "matches": ["*://*.example.com/something/*/something"],
            "js": ["/dostuff.js"]
        }
    ],
    "manifest_version": 3
}
这里是dostuff.js

let hiddenElement = document.getElementById("someId").value;
let var1 = hiddenElement * 2;

let leftCol = document.getElementById("anotherId").parentElement;
let table = document.createElement("table");
table.innerHTML = "<tr><td>Number: </td><td>" + var1 + "</td></tr>"
leftCol.appendChild(table);

let hiddenElement=document.getElementById(“someId”).value;
设var1=hiddenElement*2;
让leftCol=document.getElementById(“anotherId”).parentElement;
让table=document.createElement(“table”);
table.innerHTML=“编号:”+var1+“”
leftCol.appendChild(表);

非常感谢您的帮助:)

在内容脚本中添加一个
run\u at
属性,以确保它仅在加载页面时运行

{
“名称”:“扩展名”,
“版本”:“1.0”,
“说明”:“扩展说明”,
“内容脚本”:[
{
“匹配项”:[“*://*.example.com/something/*/something”],
“js”:[“/dostuff.js”],
“运行时间”:“文档结束”
}
],
“清单版本”:3
}

这可能是一个水疗场所,所以请查看和。您需要匹配整个站点
*://*。example.com/*
,然后检查更改时的URL是否为您想要的URL。默认值为
文档空闲
,在
文档结束
之后恰好出现一次,因此更改此内容将没有帮助。未解决问题:(