1
나는 그걸 알아 듣지 만 그냥 작동하지 않는다고 생각합니다. 왜 그런지 알 수 없습니다.크롬 확장에서 팝업에서 배경으로 데이터가 전달되지 않습니다.
매니페스트 :
{
"name": "Dummy Extension",
"description": "Dummy Extension Description",
"version": "2.0",
"permissions": [
"activeTab"
],
"background": {
"scripts": ["background.js"],
"persistent": false
},
"browser_action": {
"default_title": "Dummy Extension",
"default_popup": "popup.html"
},
"manifest_version": 2,
"content_scripts": [ {
"js": [ "jquery.min.js", "background.js" ],
"matches": [ "http://*/*", "https://*/*"]
}]
}
배경 :
chrome.extension.onMessage.addListener(function(request,sender,sendResponse)
{
if(request.greeting === "GetURL")
{
var tabURL = "Not set yet";
chrome.tabs.query({active:true},function(tabs){
if(tabs.length === 0) {
sendResponse({});
return;
}
tabURL = tabs[0].url;
sendResponse({navURL:tabURL});
});
}
}
Popup.html
<!DOCTYPE html>
<head>
<script src='popup.js'></script>
<script src='jquery.min.js'></script>
</head>
<body>
Hello World!
<br />
<input id="tabURL" type="text" />
<br />
<input value="SEND!" type="button" id="send" />
</body>
</html>
그리고 popup.js
function getURL() {
chrome.extension.sendMessage({greeting: "GetURL"},
function (response) {
tabURL = response.navURL;
$("#tabURL").val(tabURL);
});
}
$("#send").click(getURL());
,
나는 무엇이 잘못 됐는지 알아낼 수 없다. jquery가 정의되고 콘솔 오류가 발생하지 않는다. 도움이 될 것입니다!
응답을 수정하고'click (getURL())'을'click (getURL)'으로 대체해야합니다. – devnull69
@ devnull69 고마워요. – Xan