ポップアップ、コンテンツスクリプト、およびバックグラウンドスクリプトの組み合わせを処理します。 Unfotrunatelly私がそれらの中から選んだコミュニケーションは私に望みの結果を得ることができませんでした。Webextensionを使用して特定のページにログインし、1回のクリックでサブページを表示します。
ブラウザのメニューでアイコン/ポップアップを使ってwebextensionを開発する必要があります。クリックすると、ポップアップウィンドウに項目がある専用メニューが開きます。 ポップアップをクリックすると、特定のアイテム..タブを開き、特定のURLにアクセスして(パラメータまたはPOSTのURLを介して)ログインし、サブページ(ポップアップアイテムのテキストに固有)に移動する必要があります。
私は、ポップアップ& bgスクリプトの間、bgスクリプト&コンテンツスクリプトなどの間で多くのメッセージの組み合わせを試していました...しかし、それは私には決して働きませんでした。私は(windows.open経由で)ログインしても、ロードするためにさらにサブページを実行できるので、リクエストの同期にも問題がありました。
これはどのように機能するか考えていますか?いくつかのショールの例で最高ですか? 私は標準のjavascriptのみを使用しました。
私の最初の試み:
manifest.jsonを
{
"description": "test",
"manifest_version": 2,
"name": "extensiontest",
"version": "1.0",
"homepage_url": "https://xxxx.com",
"icons": {
"32": "beasts-32.png"
},
"applications": {
"gecko": {
"id": "[email protected]",
"strict_min_version": "45.0"
}
},
"content_scripts":
[
{
"matches": ["<all_urls>"],
"run_at": "document_end",
"js": ["content.js"]
}
],
"browser_action":
{
"default_icon": "popup.png",
"default_popup":"popup.html"
},
"background":
{
"scripts": ["background.js"]
},
"permissions":
[
"tabs","storage"
]
}
popup.html
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="links.css"/>
</head>
<script src="popup.js"></script>
<body>
<ul>
<li><a id="bQuote" href="#">Quote</a></li>
<li><a id="bSend" href="#">Send</a></li>
</ul>
</body></html>
popup.js
function goQuote() {
chrome.tabs.query({currentWindow: true, active: true}, function (tabs){
var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "Quote"});
});
// Generic Log In link
window.open("Login-link","targetname");
}
function goSend() {
chrome.tabs.query({currentWindow: true, active: true}, function (tabs){
var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "Send"});
});
// Generic Log In link
window.open("Login-link","targetname");
}
document.addEventListener("DOMContentLoaded", function() {
document.getElementById("bQuote").addEventListener("click", goQuote);
document.getElementById("bSend").addEventListener("click", goSend);
});
content.js
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if(request.message === "Quote") {
// Subpage link with same target name
window.open("supbpage-link1","targetname");
}
if(request.message === "Send") {
// Subpage link with same target name
window.open("supbpage-link2","targetname");
}
}
);
あなたの試みをより詳しく説明して、うまくいかなかったことを強調すると、それは役に立ちます。 – Xan
私はクリックしたポップアップアイテムに基づいて特定のサブページに入ることができません..私はいつも最初のページに入る... – Bramo
私はコンセプトを探しています..方法とは何ですか、開いているタブ、ロゴ入り、さらに特定のサブページに進む – Bramo