Hirdetés
-
PROHARDVER!
Új hozzászólás Aktív témák
-
inf3rno
nagyúr
Fejlesztett már valaki közületek firefox plugint? Van egy chrome extension, amiből 3 függvényt szeretnék firefox-ra átírni meg persze a manifest.json-t package.json-ra. Elvileg a maradék kód rendben van. Próbáltam keresgélni, de nehéz copy-paste kódot találni, többszáz oldal dokumentációt meg ezért elolvasni, hát nem éri meg.
Ilyesmik kellenének:
chrome.extension.getURL("relative/path");
chrome.browserAction.onClicked.addListener(function() {
window.open("http://domain.com/", "_new")
});
chrome.webRequest.onBeforeRequest.addListener(function() {
return {
cancel: true
}
}, {
urls: ["*://domain.com/main.js*"]
}, ["blocking"]);A getURL() elsősorban a frontend részéhez kell, hogy be tudjon injektálni egy html meg egy js fájlt xhr-el meg script tag-el.
Az onClicked-nél a toolbar gombra kattintást nézi, annyit csinál, hogy megnyitja az url-t új ablakba, az onBeforeRequest meg letiltja az eredeti oldal betöltését. Ezek mellett a manifest.json-ban van egy match a domain-re, ami beteszi az onClicked-et és az onBeforeRequest-et a background-ba szóval azok a böngésző indításakor futnak, a getURL-es részt meg csak ha stimmel a domain, akkor indítja.
Egyedül a harmadikra sikerült megoldást találnom, de az is vicc kategóriás, hogy mennyire el van bonyolítva:
const Ci = Components.interfaces;
const Cu = Components.utils;
Cu.import("resource://gre/modules/Services.jsm");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
var observer = {
QueryInterface: XPCOMUtils.generateQI([
Ci.nsIObserver,
Ci.nsISupportsWeakReference
]),
observe: function(subject, topic, data)
{
if (topic == "http-on-modify-request" &&
subject instanceof Ci.nsIHttpChannel)
{
var uri = subject.URI;
if (uri.host == "domain.com" && /main\.js/.test(uri.path))
subject.cancel();
}
}
};
Services.obs.addObserver(observer, "http-on-modify-request", true);Bármi ötlet a másik kettőre meg a package.json-ra?
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Samsung Galaxy Felhasználók OFF topicja
- gban: Ingyen kellene, de tegnapra
- Kuponkunyeráló
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- BestBuy ruhás topik
- Apple Watch Sport - ez is csak egy okosóra
- Villanyszerelés
- A fociról könnyedén, egy baráti társaságban
- RAM topik
- További aktív témák...
- Eladó Nikon D40 minden tartozékával+fotós táska
- Teljesen új Samsung S21 FE 5G DS 5G 6/128GB Graphite eladó (bontatlan)
- Teljesen új Honor 90 5G DS 5G 8/256GB Emerald Green eladó (bontatlan)
- Nintendo Switch 2 újszerű állapotban
- Új 2K Gamer PC Ryzen 5 9600X/RTX 3070 Ti 8Gb/2x8Gb DDR5 6000Mhz/500Gb NVME SSD/2-3Év gari
- MSI CreatorPro Z16P RTX A5500 TOUCH! (vapor chamberrel)
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone SE 2020, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Apple Macbook Pro 13 2020 M1 16GB 1TB SSD macbook garanciával hibátlan működéssel
- BESZÁMÍTÁS! ASROCK B650M R7 7700 32GB DDR5 1TB SSD RX 6900XT 16GB Enermax EQUILENCE 1000W
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest