Beiträge von Mira_Belle
-
-
Der Button „verschwindet“ dann in das Menü, um welches es in diesem Thema geht.
Erst, HÄ


Dann, AHHH

Danke.
-
Mal abgesehen davon, dass die returns darin keinen Zweck erfüllen, weil anschließend ja überhaupt kein Code steht und auch nichts zurückgegeben werden soll, passiert in diesen else if-Zweigen auch nichts. Die Zeilen kannst du also komplett streichen.
-
Dann kannst du das z.B. so machen (die geänderten Zeilen habe ich mal markiert) :
Und wenn ich die ganze Nacht herumgedoktert hätte, im Leben wäre ich nicht auf diese Lösung gekommen.
Ganz, ganz
lichen Dank.Funktioniert perfekt.
-
Der Code in #10 ist mein ursprünglicher Code.
Wenn ich nun aber
unter die Zeile 64 function onClick(aEvent) { quetsche, funktioniert das Skript zwar weiterhin,
aber das Blöde an der Sache ist, die Tastenkombination aus Zeile 40 bis 50,
wird ausgehebelt und funktioniert nicht mehr

Das ist doof und so soll es nicht sein.
Ziel ist es, den Code so zu gestalten, dass grundlegend alle Funktionen erhalten bleiben,
aber eben bei Rechtsklick mit der Maus nur das Menü aufgeht
und nicht mehr die Lesezeichenleiste ausgelöst wird.
Hier noch einmal das "originale" JavaScript mit Rechtsklick Bug.
JavaScript
Alles anzeigen(function ptbut() { if (location.href !== 'chrome://browser/content/browser.xhtml') return; let startHeight = '0px'; // '24px' oder '0px' Der Startzustand wird definiert: '24px' startet mit sichtbarer Leiste let collapse = '0px'; // Leiste nicht sichtbar let visible = '24px'; // Leiste sichtbar let autoCloseTime = 5000; // 0 = kein Auto-Close / >0 Zeit in Millisekunden /5000 => 5sec let intervalID = 0; let persToolbar = document.getElementById('PersonalToolbar'); try { CustomizableUI.createWidget({ id: 'PersonalToolbar-button', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { let toolbaritem = aDocument.createXULElement('toolbarbutton'); let ProfilePath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // ^^ Pfadangabe zum Profilordner und gleich in den entsprechenden Unterordner ^^ let buttonicon = "bookmark-hollow.svg"; // Name & Dateiendung des anzuzeigenden Symbols let props = { id: 'PersonalToolbar-button', class: 'toolbarbutton-1 chromeclass-toolbar-additional', removable: true, label: 'Toggle', tooltiptext: 'Lesezeichenleiste ein-/ausblenden', style: "list-style-image: url('" + ProfilePath + buttonicon + "');" }; for(var p in props) toolbaritem.setAttribute(p, props[p]); return toolbaritem; } }); } catch(e) { }; //----------BEGINN---------------------- // Funktion zum Abfragen der Tastatur ("belauscht" Eingaben) // Hinweis: Tasten, die anderweitig bereits "abgefangen" werden, ergeben keinen Event document.addEventListener('keydown', (event) => { let keyName = event.key; if (event.altKey && keyName == 'q') { // Funktion wird ausgeführt, wenn "Alt & q gedrückt werden onClick(event); } }, false ); //----------ENDE------------------------ document.getElementById('PersonalToolbar').style.minHeight = '0'; document.getElementById('PersonalToolbar').style.transition = 'all 0.3s steps(6, end)'; if( startHeight === visible || startHeight === collapse ) { document.getElementById('PersonalToolbar').style.height = startHeight; } else { document.getElementById('PersonalToolbar').style.height = visible; } document.getElementById('PersonalToolbar-button').addEventListener( "click", onClick ); function onClick(aEvent) { if (persToolbar.style.height == '') { persToolbar.style.height = collapse; } else if (persToolbar.style.height == visible) { persToolbar.style.height = collapse; } else if(persToolbar.style.height == collapse) { persToolbar.style.height = visible; if(!intervalID && autoCloseTime) { intervalID = aEvent.target.ownerGlobal.setInterval( autoClose, autoCloseTime ); } } } function autoClose() { if( intervalID ) { if( persToolbar.style.height == visible) { persToolbar.style.height = collapse; clearInterval(intervalID); intervalID=0; } } } })(); -
EDIT:
Obwohl ... Müsste passen. So sieht das bei mir mit den Klammern aus.
Weiß aber nicht, ob es funktioniert.
Und funktioniert nicht, s.o. #16
-
-
Ohne die Klammer in Zeile 5 mault aber mein Editor!
-
Mißt,
und hier bekomme ich es auch nicht hin.
JavaScript
Alles anzeigen(function ptbut() { if (location.href !== 'chrome://browser/content/browser.xhtml') return; let startHeight = '0px'; // '24px' oder '0px' Der Startzustand wird definiert: '24px' startet mit sichtbarer Leiste let collapse = '0px'; // Leiste nicht sichtbar let visible = '24px'; // Leiste sichtbar let autoCloseTime = 5000; // 0 = kein Auto-Close / >0 Zeit in Millisekunden /5000 => 5sec let intervalID = 0; let persToolbar = document.getElementById('PersonalToolbar'); try { CustomizableUI.createWidget({ id: 'PersonalToolbar-button', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { let toolbaritem = aDocument.createXULElement('toolbarbutton'); // let ProfilePath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome')); let ProfilePath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // ^^ Pfadangabe zum Profilordner und gleich in den entsprechenden Unterordner ^^ let buttonicon = "bookmark-hollow.svg"; // Name & Dateiendung des anzuzeigenden Symbols let props = { id: 'PersonalToolbar-button', class: 'toolbarbutton-1 chromeclass-toolbar-additional', removable: true, label: 'Toggle', tooltiptext: 'Lesezeichenleiste ein-/ausblenden', style: "list-style-image: url('" + ProfilePath + buttonicon + "');" // style: "list-style-image: url('" + ProfilePath + "icons/" + buttonicon + "');" // style: 'list-style-image: url("' + ("file:" + currentProfileDirectory + "/chrome/icons/" + buttonicon) +'");', }; for(var p in props) toolbaritem.setAttribute(p, props[p]); return toolbaritem; } }); } catch(e) { }; //----------BEGINN---------------------- // Funktion zum Abfragen der Tastatur ("belauscht" Eingaben) // Hinweis: Tasten, die anderweitig bereits "abgefangen" werden, ergeben keinen Event document.addEventListener('keydown', (event) => { let keyName = event.key; if (event.altKey && keyName == 'q') { // Funktion wird ausgeführt, wenn "Alt & q gedrückt werden onClick(event); } }, false ); //----------ENDE------------------------ document.getElementById('PersonalToolbar').style.minHeight = '0'; document.getElementById('PersonalToolbar').style.transition = 'all 0.3s steps(6, end)'; if( startHeight === visible || startHeight === collapse ) { document.getElementById('PersonalToolbar').style.height = startHeight; } else { document.getElementById('PersonalToolbar').style.height = visible; } document.getElementById('PersonalToolbar-button').addEventListener( "click", onClick ); function onClick(aEvent) { if (persToolbar.style.height == '') { persToolbar.style.height = collapse; } else if (persToolbar.style.height == visible) { persToolbar.style.height = collapse; } else if(persToolbar.style.height == collapse) { persToolbar.style.height = visible; if(!intervalID && autoCloseTime) { intervalID = aEvent.target.ownerGlobal.setInterval( autoClose, autoCloseTime ); } } } function autoClose() { if( intervalID ) { if( persToolbar.style.height == visible) { persToolbar.style.height = collapse; clearInterval(intervalID); intervalID=0; } } } })();Hatte zwar den Code direkt unter Zeile 75 geklemmt,
aber dann funtionierte der Aufruf per Tastenkombi.
JavaScript
Alles anzeigenfunction onClick(aEvent) { if (aEvent.button != 0){ return; } if (persToolbar.style.height == '') { persToolbar.style.height = collapse; } else if (persToolbar.style.height == visible) { persToolbar.style.height = collapse; } else if(persToolbar.style.height == collapse) { persToolbar.style.height = visible; if(!intervalID && autoCloseTime) { intervalID = aEvent.target.ownerGlobal.setInterval( autoClose, autoCloseTime ); } } } -
Eigentlich ganz einfach, nur ich bin einfach nicht darauf gekommen.
Danke, ich war bei meinen Versuchen schon richtig verzweifelt.
-
Wie hast Du es denn beim QuickLinkButton-cf.uc.js umgesetzt?
Ich komme da auf keinen grünen Zweig!
JavaScript
Alles anzeigen(function() { if (location.href !== AppConstants.BROWSER_CHROME_URL) return; try { CustomizableUI.createWidget({ id: 'link-button-about', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton'); let currentProfileDirectory = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/"); // Pfadangabe zum Profilordner let buttonicon = "firefox-logo.svg" // Name & Dateiendung des anzuzeigenden Symbols let props = { id: 'link-button-about', class: 'toolbarbutton-1 chromeclass-toolbar-additional', removable: 'true', label: 'Quicklink: about:about', accesskey: '', tooltiptext: 'Quicklink:\nabout:about', style: 'list-style-image: url("' + ("file:" + currentProfileDirectory + "/chrome/icons/" + buttonicon) +'");', onclick: "openTrustedLinkIn('about:about', 'tab')" }; for (var p in props) toolbaritem.setAttribute(p, props[p]); return toolbaritem; } }); } catch(e) { }; }) (); -
a. Habe ich mir darüber noch nie Gedanken gemacht.
und
b. jetzt wo Du, 2002Andreas, das erwähnst, habe ich es ausprobiert.
Manches Mal erscheint nur ein Menü, manchmal wird aber auch das Script ausgeführt.
Nun gibt es wieder Änderungspotential von so einigen JavaScript'en, die ich so in Verwendung habe.
-
Hier auch noch einmal etwas Hintergrund.
Warum verlinkst du dazu nicht auf unsere Seite
...
Weil es mir nicht so ersichtlich wurde, warum es nun den Unified Extensions Button gibt,
bzw. warum er so wichtig ist oder noch wird.
Die Erklärungen dazu sind ja erst hier ^ oben.
Außerdem dachte ich, kann nicht schaden.
-
Hier auch noch einmal etwas Hintergrund.
Browser-Addons: Mozilla Firefox 109 nutzt das Chrome Extension Manifest V3Mozilla Firefox 109 ist erschienen und nutzt erstmals das umstrittene Chrome Extension Manifest V3 als Standard.www.computerbase.de -
kann ich dieses "puzzleteil" icon, das zum anzeigen und verwalten der addons hinzugefügt wurde, irgendwie los werden?
Gibt es, aber wie Sören schon schrieb, wird die Möglichkeit in about:addons auf Einstellungen der Addons
zugreifen zu können, immer geringer.
Dann hast Du ein Problem, deshalb ist das Ausblenden des Puzzelicon keine so gute Idee.
Aber es gibt ein JavaScript, welches ermöglicht das Puzzelicon zu verschieben,
eventuell hilft Dir das ja auch, denn damit kannst Du das Icon dann ja auch in "Firefox anpassen" ablegen.
Und solltest Du es dann irgendwann brauchen, ziehst Du es Dir einfach wieder auf eine Leiste.
Zu finden hier im Forum =>
neue Schaltfläche "Einheitliche Erweiterungen"
-
Mira,
gemacht und probiert. Bis jetzt, keine Werbung auf den genannten Seiten.
...Na also, geht doch.

-
-
Alles anzeigen
So lansam blicke ich nicht mehr durch.
Vielleicht zu besseren Information. Win 10 Firefox 108.0.2 (64-Bit)
Addons:
uBlacklist
ADblock
ADBlockfuer die Tube
ADBlocker Ultimate
Popup Blocker strikt
uBlacklist
Das war es dann auch schon. Werbung kommt nun weniger aber immer noch. Teilweise.
Gruss Maik
Ach herjeh.
Schmeiß die doch alle mal von System
und dann nimm nur Einen, m.M. den uBlock Origin.
Würde Dir dann meine genutzten Listen zukommen lassen.
Hier oder da schlüpft dann doch mal unerwünschtes durch, aber
das kannst Du dann ja im uBlock einstellen.
Du musst Dich halt auch mit der Erweiterung auseinandersetzen.
uBlock Origin – Holen Sie sich diese Erweiterung für 🦊 Firefox (de)Laden Sie uBlock Origin für Firefox herunter. Endlich ein effizienter Blocker. Prozessor-freundlich und bescheiden beim Speicherbedarf.addons.mozilla.org -
Backup ist einfach nur die englische Übersetzung für den deutschen Begriff Sicherung. In dem Wort steckt keinerlei Aussage über den Umfang der Sicherung oder den Sicherungsort.

Ja, ich weiß, es ging mir ja auch eher um die von Boersenfeger gestellte Frage.
Habe mal wieder um zu viele Ecken gedacht.
-
BackUp!
BackUp ist nicht einfach irgendetwas irgendwo zu sichern, sondern eine Strategie!
Systemsicherung.
Diese gehört auf ein, besser auch zwei externe Speicher. Davon sollte min einer außer Haus sein.
Lokale Sicherung!
Wenn man an dem System "herumdoktert" und "herumschraubt" ist es nicht verkehrt manuell das System zu sichern.
Jedoch sollte auch diese Sicherung auf einem anderen Datenträger sich befinden, da ja bei einer Wiederherstellung
die komplette Systempartition überschrieben wird.
Sicherung einzelner Programme und/oder ihrer Einstellungen.
Was soll man da für einen großen Aufriss machen?
Wird doch nur benötigt, wenn z.B. das Update scheitert, oder wenn man versehentlich bei Änderungen
an dem Profil oder dem Programmverzeichnis eben jenes zerschießt.
Und NUR um letzteres geht es hier bei dem Sicherungsscript von FuchsFan

Es ist im klassischen Sinne eben kein Backup, auch wenn "wir" dauernd davon sprechen.
Es zählt, was gemeint ist.

Wobei, wenn jemand die gesicherten Dateien extern speichert, ist es dann halt doch wieder ein Backup.
Wie auch immer, es kommt auch etwas darauf an, wie man mit den Sicherungen umgeht und wie man sie verwendet.
Es gäbe sogar die Möglichkeit, zwei Rechner zu synchronisieren, aber das würde jetzt hier zu weit führen.