gpt4 book ai didi

javascript - 将当前网页的 url 显示到 chrome 扩展中

转载 作者:行者123 更新时间:2023-11-28 01:23:04 28 4
gpt4 key购买 nike

我尝试在 Chrome 扩展程序中显示当前网页的 URL。我刚刚开始 javascript 和 chrome 扩展开发。

我的manifest.json

{
"manifest_version": 2,
"version": "0.1",
"name": "!!!",
"author": "!!!",
"description": "Extension !!!",
"icons": {
"default_icon": "logo2.png"
},
"browser_action": {
"default_icon": "logo2.png",
"default_popup": "popup.html"
},
"options_page": "options.html",
"background": {
"scripts": ["background.js"],
"persistent": true
},
"content_scripts": [{
"matches": ["http://*/*", "https://*/*"],
"js": ["contentscript.js"]
}],
"web_accessible_resources": ["contentscript.js"],
"permissions": ["tabs", "http://*/*", "https://*/*"]
}

我的popup.html:

<!doctype html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Extension !!!!!!!!!</title>
<link rel="stylesheet" href="stylesheet.css">
<!--<script type="text/javascript" src="tracker.js"> </script>
<script src="canvas.js"></script>-->
<script src="background.js"></script>
<script src="contentscript.js"></script>
</head>
<body>

<!--=========TITLE============== -->
<div id="main-logo">
<div id="logo"><img src="logo2.png"><img></div>
<h1>!!!!</h1>
</div>

<div id="main">
<!--=============Display URL===========-->
<div id="main-url">
<script src="background.js"></script>
</div>
</div>

我的 contentscript.js

chrome.extension.sendRequest({
url: window.location.href
}, function(response) {
console.log(response.farewell);
);

我的背景.js

chrome.extension.onRequest.addListener(
function(request, sender, sendResponse) {
console.log(sender.tab ?
"from a content script:" + sender.tab.url :
"from the extension !!TEST!!");
}
);

我的弹出窗口和控制台中没有显示任何内容...

感谢您的帮助最好的问候

最佳答案

chrome.extension.sendRequest 已弃用。您应该使用 chrome.runtime.sendMessage:

发件人

chrome.runtime.sendMessage({
url: window.location.href
}, function(response) {
console.log(response.farewell);
);

接收者

chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if(request.url==="http://xxxxx.com"){
chrome.runtime.sendMessage({farewell:"bingo"},function(response){});
}
}
);

顺便说一句,正如@Teepeemm所说,您不必加载内容脚本和后台js两次。 contentscript.js 将根据匹配模式注入(inject)到 Web 上下文中。一旦扩展程序开始运行,background.js就会被执行

关于javascript - 将当前网页的 url 显示到 chrome 扩展中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23049796/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com