ユーザーが情報を入力してレポートを生成するChrome拡張機能があります。もちろん、このレポートはユーザーが入力した内容に基づいて毎回異なります。バックグラウンドページにメッセージを送信し、htmlを更新してからタブに表示します
をねえ、氏の背景ページを:私が達成したい何
は、言って私の拡張用です。ここに必要な情報があります。ここでは、私があなたに与えたものに基づいていくつかのHTMLを構築し、それをユーザーに示します。ここで
私が使用しているmanifest.json
次のとおりです。ここで
{
"manifest_version": 2,
"name": "XXXX",
"description": "XXXX",
"version": "1.0.0",
"permissions": ["storage", "tabs"],
"options_page": "settings.html",
"background":
{
"page": "background.html"
},
"content_scripts":
[
{
"matches": ["<all_urls>"],
"js": ["js/jquery-3.1.1.min.js", "js/bootstrap.min.js", "js/main.js", "js/background.js"],
"css": ["css/bootstrap.min.css", "css/font-awesome.min.css"]
}
],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"icons": { "128": "logo.png" }
}
とき私background.html
<html>
<body>
<script src="js/jquery-3.1.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/background.js"></script>
</body>
</html>
そして、ここでは、今私のbackground.js
$(document).ready(function() {
chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
$("body").html(msg.message);
console.log("Message from: " + msg.message);
});
});
ですユーザークリニック私の延長線上KSボタン、私がメッセージを送信するには、次のコードを使用します。今、私が起こることを期待したもの
$("#generate").click(function() {
chrome.tabs.create({url: 'background.html'});
chrome.runtime.sendMessage({
message: "Sample message."
});
});
を開き、どのようなメッセージに基づいてページ変更の体を持っている私のbackground.html
ページのためでした送信されましたが、これは動作しません。
アイデア?
実は、 'background.js'はもともとtest.js''と呼ばれていた、私はこのスレッドのためにその名前を変更するのを忘れました。いずれにせよ、この情報をありがとう! – ThePerplexedOne
また、 'chrome.storage.local'は、このデータが' chrome.storage.sync'とは違って後で破壊されることを意味しますか? – ThePerplexedOne
いいえ、ログインしているGoogleアカウントを使用して複製するのではなく、あなたのマシンに残っていることを意味します。 – Xan