Я пишу расширение Chrome для навигации по сложному веб-сайту.До сих пор мне удалось запустить небольшой JS с помощью действия браузера и создать подменю для URL-адресов тех бит, которые я чаще всего использую на веб-сайте.
При выборе любого из трех подпунктов Chrome открывает три новые вкладки, каждая из которых имеетодин из URL-адресов в подменю.Любая идея, как улучшить это?
Я начал изучать это 3 дня назад, поэтому извиняюсь, если вопрос дубликат.
manifest.json
{
"name": "Satisfactory",
"version": "1.0",
"manifest_version": 2,
"author": "Mohamed Aly",
"description": "Features they should have on ISCP",
"incognito": "split",
"icons":{
"128":"icon.png"
},
"background": {
"scripts": ["background.js"],
"persistent": false
},
"permissions": ["tabs", "contextMenus"],
"content_scripts": [
{
"matches": [
"https://www.iscp.ac.uk/*"
],
"js": ["content.js"]
}
],
"browser_action": {
"default_icon": "icon.png",
"default_title": "All is satisfactory!"
}
}
// background.js
console.log('Satisfactory is running in the background!')
// Called when the user clicks on the browser action.
chrome.browserAction.onClicked.addListener(buttonClicked);
function buttonClicked(tab) {
console.log("button clicked!");
chrome.tabs.sendMessage(tab.id, {"message": "browser action"});
}
//Listening for messages
// chrome.runtime.onMessage.addListener(receiver);
// function receiver(request, sender, sendResponse) {
// if (request.message === "thank you") {
// }
// }
//context menu:
chrome.runtime.onInstalled.addListener(function() {
console.log("context menus added");
var parent = chrome.contextMenus.create({
"title": "Satisfactory",
"id": "parent",
"contexts": ["all"]
});
var child1 = chrome.contextMenus.create(
{"title": "Work in progress",
"parentId": parent,
"id": "workinProgress",
"contexts": ["all"]
});
var child2 = chrome.contextMenus.create(
{"title": "Add a CBD",
"parentId": parent,
"id": "addaCBD",
"contexts": ["all"]
});
var child2 = chrome.contextMenus.create(
{"title": "Add a PBA",
"parentId": parent,
"id": "addaPBA",
"contexts": ["all"]
});
});
///Work in progress option
chrome.contextMenus.onClicked.addListener(workinProgress);
function workinProgress(tabs) {
console.log("WIP clicked!");
open('https://www.iscp.ac.uk/dash/work_in_progress_list.aspx')
};
//Add a CBD option
chrome.contextMenus.onClicked.addListener(addaCBD);
function addaCBD(tabs) {
console.log("CBD clicked!");
open('https://www.iscp.ac.uk/forms/cbd.aspx')
};
//Add a PBA option
chrome.contextMenus.onClicked.addListener(addaPBA);
function addaPBA(tabs) {
console.log("PBA clicked!");
open('https://www.iscp.ac.uk/forms/PBA.aspx')
};
Заранее спасибо!