auf welche dieses Entwicklerwerkzeug keinen Zugriff hat.
Danke für diese Erklärung.
Dann warten wir einfach auf das, was da noch so passieren wird.
auf welche dieses Entwicklerwerkzeug keinen Zugriff hat.
Danke für diese Erklärung.
Dann warten wir einfach auf das, was da noch so passieren wird.
Interessanterweise ist dieses Verhalten aber auch bei anderen Elementen so!
Bei mir ist zwar per CSS der allgemeine Hintergrund dunkel, aber an die verschiedenen Boxen komme ich nicht heran,
z.B. Standard-Schriftart oder Standard-Schriftart, also an die Boxen dahinter![]()
Es geht schon oben los mit "Firefox ist derzeit der Standardbrowser". Da kann ich den Hintergrund einfach nicht ändern!
Das Element wäre ".container"
in der "Liste" eine andere Farbe definiert, funktioniert es!
Gehe ich in die Stielbearbeitung und gebe
".container: { background-color: #50a3ec !impotant; } ein,
funktioniert es nicht.
Und so verhält es sich auch bei anderen Elementen, bzw. deren Hintergründen.
Wirklich sehr merkwürdig, das alles ist!
Konnte nachvollziehen es.
Schaut das Skript etwa jetzt so aus?
// Button_ClearCache.uc.js
// Linksklick löscht den Cache
// Mittelklick öffnet die Bookmarks-Sidebar
// Rechtsklick öffnet den Chronik-Dialog
(function() {
if (!window.gBrowser)
return;
try {
CustomizableUI.createWidget({
id: 'buttonClearCache',
type: 'custom',
defaultArea: CustomizableUI.AREAS,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'buttonClearCache',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: true,
// Name im AnpassungFenster
label: 'Cache löschen',
// Name bei MausHover wenn in Symbolleiste
tooltiptext: 'Links Cache löschen / Mittelklick öffnet die Bookmarks-Sidebar / Rechts Chronik-Dialog öffnen',
style: 'list-style-image: url("file:///C:/FoxIcons2/Bild43.png")',
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
} catch(e) { };
//document.getElementById('buttonClearCache').addEventListener('click', event => {
function onClick(event) {
if (event.button == 0) {
Services.cache2.clear();
}
if (event.button == 1) {
SidebarController.toggle('viewBookmarksSidebar').click();
}
if (event.button == 2) {
event.target.ownerDocument.getElementById('sanitizeItem').click();
}
});
})();
Alles anzeigen
Dann entferne mal die runde Klammer in Zeile 50.
Aus }); mach };
FuchsFan Bitte poste doch einmal die "neue" Fehlerausgabe.
Denn wichtig ist, was in der ersten Zeile ganz hinten steht!
Windows 10 Consumer ESU Anmeldung
ohne Microsoft Konto klappt wieder mit dem Skript.
Update 12.11.2025- Version 0.0.8
Nachdem ersten ESU-Update konnte der Entwickler das Skript dahingehend verfeinern,
dass nun ESUs mit einem lokalen Account wieder funktionieren.
Oder mit dem Trellix Stinger!
Aber auf jeden Fall einen Scan auf Schadsoftware!
schlingo Und was interessiert Dich das?
Bzw. Was geht es Dich an?
Horstmann Ich danke Dir ganz
lichst.
Aber ich habe es nun doch per CSS hinbekommen.
Habe das CSS aber nochmals bearbeitet.
@-moz-document url(chrome://browser/content/browser.xhtml)
{
#context-closetab + menuseparator {
order: 1 !important;
}
#context-inspect,
#context-closetab {
order: 1 !important;
}
#context-media-eme-separator {
order: 1 !important;
}
#ublock0_raymondhill_net-menuitem-10 {
order: 2 !important;
}
#_ce1a7b4e-0937-4480-b15e-42a996d680b8_-menuitem-_open-in-private-mode {
order: 3 !important;
}
#languagetool-webextension_languagetool_org-menuitem-_languagetool-menu,
#_0da2e603-21ba-4422-8049-b6d9e013ed84_-menuitem-_Google,
#savewebpas_jeffersonscher_com-menuitem-_saveWebPas {
order: 1 !important;
}
#context-inspect {
position: relative !important;
margin-top: 6px !important;
}
#context-inspect::before {
content: "";
display: block;
position: absolute;
left: 11px !important; /* Abstand links anpassen */
right: 11px !important; /* Abstand rechts anpassen */
top: -3px !important; /* Höhe nach oben anpassen */
height: 1px !important; /* Dicke der Linie */
background: var(--uc-color-orange-normal) !important; /* Farbe anpassen */
}
}
Alles anzeigen
Habe es doch alleine geschafft!
Ich wusste noch, dass ich soetwas schon einmal irgendwo gemacht habe!
Die Lösung, ein Pseudo-Element.
Hier der Code:
#context-inspect {
position: relative !important;
margin-top: 6px !important;
}
#context-inspect::before {
content: "";
display: block;
position: absolute;
left: 11px !important; /* Abstand links anpassen */
right: 11px !important; /* Abstand rechts anpassen */
top: -3px !important; /* Höhe nach oben anpassen */
height: 2px !important; /* Dicke der Linie */
background: red; /* Farbe anpassen */
}
Alles anzeigen
Und wie erstelle ich mir einen neuen, zusätzlichen Separator?
Der soll dann zwischen "Untersuchen" und "Tab schließen" sein.
So eine XXXX, ich wusste das einmal!
Horstmann Ja, eigentlich!
Aber genau dieser eben nicht.
So, habe mal etwas aufgeräumt!
#contentAreaContextMenu > menuseparator:nth-child(127) {
order: 1 !important;
}
#context-inspect,
#context-closetab {
order: 1 !important;
}
#context-media-eme-separator {
order: 1 !important;
}
#languagetool-webextension_languagetool_org-menuitem-_languagetool-menu,
#_ce1a7b4e-0937-4480-b15e-42a996d680b8_-menuitem-_open-in-private-mode,
#_0da2e603-21ba-4422-8049-b6d9e013ed84_-menuitem-_Google,
#savewebpas_jeffersonscher_com-menuitem-_saveWebPas {
order: 1 !important;
}
Alles anzeigen
Nun passt es.
Dass die beiden Separatoren für sich alleine stehen, ist Absicht!
2002Andreas Danke!!
Genau der ist es!
Ok, habe es dank Eurer Hilfe hinbekommen!
Das CSS für das Menü sieht jetzt so aus:
#contentAreaContextMenu > menuseparator:nth-child(127) {
order: 1 !important;
}
#context-closetab {
order: 1 !important;
}
#context-media-eme-separator {
order: 1 !important;
}
#languagetool-webextension_languagetool_org-menuitem-_languagetool-menu {
order: 1 !important;
}
#_ce1a7b4e-0937-4480-b15e-42a996d680b8_-menuitem-_open-in-private-mode {
order: 1 !important;
}
Alles anzeigen
Und das Menü so:
1. ![]()
![]()
Lässt sich der Separator "#contentAreaContextMenu > menuseparator:nth-child(127)"
irgendwie etwas differenzierter ansprechen?
OH ![]()
Muss noch
da rein quetschen!
Danke 2002Andreas soweit war ich auch schon.
Aber ich möchte jene Einträge nicht einfach vom Ende an den Anfang verschieben, sondern mitten rein!
Also genauer gesagt direkt vor dem Eintrag "Untersuchen".
Und das bekomme ich per CSS einfach nicht hin.
Hi, ich bräuchte mal eine Info!
Die Erweiterung "Simple Translate" erstellt zwei Einträge im Kontextmenü,
je nach "Funktion"!
1. Selektor "#simple-translate_sienori-menuitem-_translateText" für "Ausgewählten Text übersetzen"
und
2. Selektor "#simple-translate_sienori-menuitem-_translatePage" für "Diese Seite übersetzen".
Nun sind die immer recht weit am Ende des Menüs und auch nicht immer an der gleichen Position,
hängt davon ab, welche Erweiterung sonst noch so mitmischt.
Wie lassen sich diese Einträge sortieren bzw. jene von "Simple Translate" gänzlich verschieben?
Per CSS habe ich es schon probiert, habe aber den richtigen Kniff nicht gefunden,
oder es geht so eventuell auch gar nicht!
Gäbe es da dann eine Erweiterung, die da irgendwie einspringen könnt?
Aber es funktioniert nicht in v145.0rc1.
Das wäre merkwürdig, denn in der Nightly 146.0a1 funktioniert es.
Und nun zitiere ich mich mal selbst!
Ach herrje, ich glaube, ich tu Boesenfeger unrecht.
Es gibt eine viel ältere Anpassung des Skripts an DeepL!Dazu aber heute Nachmittag mehr. Muss weg.
Ich glaube fast, universum123 hatte es verbrochen! (16. September 2018)
Denn jene Version von Tanni (18. Februar 2018) hat diesen Code noch nicht!
Es ist also höchstwahrscheinlich wirklich so, wie Du Sören Hentzschel es gepostet hast.
Ganze Seiten konnten wohl nie mit DeepL übersetzt werden.
Ach herrje, ich glaube, ich tu Boesenfeger unrecht.
Es gibt eine viel ältere Anpassung des Skripts an DeepL!
Dazu aber heute Nachmittag mehr. Muss weg.
Sören Hentzschel Ok, ich habe mich da ganz offensichtlich missverständlich ausgedrückt!
Ich meine, als ich das Skript für DeepL angepasst habe, damals, funktionierte es.
Deshalb hätte ich, damals, besagte Zeilen Code nicht rausgenommen.
Da ich diese Funktion aber nie nutz(t)e, ist mir halt nie aufgefallen,
dass es irgendwann nicht mehr funktionierte.
Es hat sich ja auch nie irgendwer gemeldet!
Jetzt weiß ich, dass es nicht geht, und habe den Code bereinigt.
Ergo, alles wird gut.
/* ------------------------------------------------------------------------------ */
Nachtrag! Ganz Wichtig![]()
Ich schmücke mich hier mit fremden Federn!!
Nein, die Anpassungen des Skripts an DeepL stammen gar nicht von mir!
Boersenfeger war's! ER ist schuld! ![]()
![]()
![]()
![]()
Ich habe nur das mit den Symbolen angepasst und hinzugefügt.
Mal überarbeitet und bereinigt!
PS. Link im header neu gesetzt!
// Translate_DeepL.uc.js
// https://github.com/ardiman/userChrome.js/tree/master/contexttranslate
// ex ContextTranslate.uc.js///
// modifiziert by universum 123, Umlaute geändert by 2002Andreas
// https://www.camp-firefox.de/forum/thema/139966/?postID=1281813#post1281813
(function () {
if (location.href !== 'chrome://browser/content/browser.xhtml') return;
let translate = function () {
let browserMM = gBrowser.selectedBrowser.messageManager;
browserMM.addMessageListener('getSelection', function listener(message) {
let text = (message.data !== '');
if (text) {
openWebLinkIn('https://www.deepl.com/translator#en/de/' + encodeURIComponent(message.data), 'tab');
};
browserMM.removeMessageListener('getSelection', listener, true);
});
browserMM.loadFrameScript('data:,sendAsyncMessage("getSelection", content.document.getSelection().toString())', true);
}
let menuitem = document.createXULElement('menuitem');
menuitem.id = 'context-DeepLtranslate';
menuitem.setAttribute('label', '\u00dcbersetzen (DeepL)');
menuitem.classList.add('menuitem-iconic');
let ProfilePath = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/");
let IconPath = '/chrome/icons/'; // Pfad in den entsprechenden Unterordner
let ButtonIcon = "DeepL_2.png"; // Name & Dateiendung des anzuzeigenden Symbols!
menuitem.style.setProperty('--menuitem-icon', 'url("' + ("file:" + ProfilePath + IconPath + ButtonIcon) + '")');
menuitem.addEventListener('command', translate);
let refItem = document.getElementById('context-inspect');
refItem.parentNode.insertBefore(menuitem, refItem);
})();
Alles anzeigen
Was aber nicht funktioniert, ganze Seiten übersetzen zu lassen.
Wie ich bereits schrieb: Das hat mit DeepL noch nie in der kostenlosen Version funktioniert. Dafür musst du mindestens 7,49 € pro Monat bezahlen.
Irgendwann einmal muss es funktioniert haben, sonst hätte ich es ja nicht eingebaut.
Ist aber auch nun egal, es geht nicht, also Code bereinigt!
...
Eigentlich wollte ich mir lediglich nochmal zu Gemüte führen, auf welche Weise es nimmer funktioniert. Und siehe da: es funktioniert einfach wieder.
Tatsache. Da hat DeepL dann doch wieder erbarmen gehabt und die Änderungen teilw. zurückgenommen.
Was aber nicht funktioniert, ganze Seiten übersetzen zu lassen.
D.h. aus dem "alten" Skript können die Zeilen 17 & 18 gelöscht werden.