Hallo,
was css betifft kenn ich mich ein wenig aus aber in JavaScript garnicht.
Deshalb bitte um Hilfe.
könnte mir jemand dieses Script so umschreiben das der CSS Code in einer Extra Datei ausgelagert werden kann ?
oder ist es zu aufwendig ?
was css betifft kenn ich mich ein wenig aus aber in JavaScript garnicht.
Deshalb bitte um Hilfe.
könnte mir jemand dieses Script so umschreiben das der CSS Code in einer Extra Datei ausgelagert werden kann ?
oder ist es zu aufwendig ?
Code:
(function() {
const Cu = Components.utils;
if (!window.FileUtils) Cu.import('resource://gre/modules/FileUtils.jsm');
if (!window.Services) Cu.import('resource://gre/modules/Services.jsm');
setTimeout(function() {
saveTo()
}, 200);
function saveTo() {
// Config
var dirArray = [
['G:\\xxx', 'G:\\xxx'],
['G:\\xxx', 'G:\\xxx']
];
let button = document.getElementById("unknownContentType").getButton("cancel");
let saveTo = button.parentNode.insertBefore(document.createXULElement("button"), button);
var saveToMenu = saveTo.appendChild(document.createXULElement("menupopup"));
saveTo.classList.toggle("dialog-button");
saveTo.label = "Speichern in..";
saveTo.type = "menu";
var css =`
hbox.dialog-button-box button.dialog-button menupopup {
background: aqua !important;
}
hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic:hover{
background: red !important;
}
hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic hbox.menu-iconic-left {
padding-left: 5px !important;
}
hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic label.menu-iconic-text{
padding-right: 5px !important;
padding-left: 4px !important;
}
`;
var sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
var uri = Services.io.newURI('data:text/css,' + encodeURIComponent(css))
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
dirArray.forEach(function(dir) {
var [name, dir] = [dir[1], dir[0]];
var mi = document.createXULElement("menuitem");
var item = saveToMenu.appendChild(mi);
item.setAttribute("label", (name || (dir.match(/[^\\/]+$/) || [dir])[0]));
item.setAttribute("image", "moz-icon:file:///" + dir + "\\");
item.setAttribute("class", "menuitem-iconic");
item.addEventListener("command", function() {
var file = new FileUtils.File(dir.replace(/\\/g, '\\\\') + '\\\\' + (document.getElementById('locationtext') ? document.getElementById('locationtext').value : document.getElementById('location').value));
dialog.mLauncher.saveDestinationAvailable(file);
dialog.onCancel = function() {};
close();
});
});
}
}());