Alles Gute! ![]()
Beiträge von aborix
-
-
-
Die Navigationsleiste verschwindet aber nicht, kann das an dem "Menü-öffnen-Button" liegen, der nicht verschiebbar ist?Glaube ich nicht.
Teste: Ersetze die Zeile
durchZitat
Kann man die URL-Leiste verbreitern?Versuche folgendes:
Starte Firefox ohne das Skript. Wenn neben der Adressleiste nicht die Suchleiste ist, ziehe sie im Anpassen-Fenster dorthin und schließe dieses wieder. Verschiebe die Grenze zwischen Adress- und Suchleiste, so dass die Adressleiste die richtige Größe hat. Dann starte Firefox wieder mit dem Skript. -
Das sieht mir aber schon nach der Navigationsleiste aus. Wie auch immer, Button weg einfach mit CSS: display: none.
-
-
@ Son Goku:
Vor- und Zurück-Buttons einzeln verschiebbar:
Code
Alles anzeigentry { CustomizableUI.createWidget({ id: 'ucjs_back-item', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem'); toolbaritem.id = 'ucjs_back-item'; toolbaritem.className = 'chromeclass-toolbar-additional'; toolbaritem.setAttribute('label', 'Zurück'); return toolbaritem; } }); } catch(e) { }; document.getElementById('ucjs_back-item').appendChild(document.getElementById('back-button')); try { CustomizableUI.createWidget({ id: 'ucjs_forward-item', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem'); toolbaritem.id = 'ucjs_forward-item'; toolbaritem.className = 'chromeclass-toolbar-additional'; toolbaritem.setAttribute('label', 'Vor'); return toolbaritem; } }); } catch(e) { }; document.getElementById('ucjs_forward-item').appendChild(document.getElementById('forward-button'));Wenn du diesen Code nimmst, dann lass den aus #21 weg. Nur einen von beiden, nicht beide zusammen.
-
Versuche nochmal die Änderungen im Programm- und Profilordner nach dieser Anleitung:
https://www.camp-firefox.de/forum/viewtopi…044799#p1044799 -
@ Elkinator:
Nimm nur die Codes von #17, keine von den früheren.
Funktionieren sie in der Browserkonsole? -
ich habe gerade das aktuelle Script "UpdateBookmark2.uc.js" im Firefox 58 getestet und festgestellt das die Zeile
"Mit aktueller URL ersetzen"
nicht in der Sidebar erscheint, gibt es eine Möglichkeit das wieder einzubauen?Ich sehe derzeit leider keinen Weg dazu. Die Lesezeichen in der Sidebar (und auch in der Bibliothek) sind anders aufgebaut als die in der LZ-Leiste und im -Menü.
-
Ich habe jetzt andere Codes, mit denen man diese Elemente beliebig verschieben kann:
- die Adressleiste
- die Vor/Zurück-Schaltflächen, nur beide gemeinsam
- die Mehr-Werkzeuge-Schaltfläche, das ist die mit dem Zeichen >>Das Verschieben funktioniert innerhalb der Symbolleisten. Es funktioniert nicht in das Overflow-Menü und zu den unbenutzten Elementen (rechter bzw. linker Teil des Anpassen-Fensters). Wer es dennoch tun will, soll vorher sein Profil sichern.
Code
Alles anzeigen// Adressleiste verschiebbar try { CustomizableUI.createWidget({ id: 'ucjs_urlbar-item', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem'); toolbaritem.id = 'ucjs_urlbar-item'; toolbaritem.className = 'chromeclass-toolbar-additional'; toolbaritem.setAttribute('label', 'Adressleiste'); return toolbaritem; } }); } catch(e) { }; document.getElementById('ucjs_urlbar-item').appendChild(document.getElementById('urlbar-container'));Code
Alles anzeigen// Vor/Zurück-Schaltflächen verschiebbar try { CustomizableUI.createWidget({ id: 'ucjs_back-forward-item', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem'); toolbaritem.id = 'ucjs_back-forward-item'; toolbaritem.className = 'chromeclass-toolbar-additional'; toolbaritem.setAttribute('label', 'Vor/Zurück'); return toolbaritem; } }); } catch(e) { }; document.getElementById('ucjs_back-forward-item').appendChild(document.getElementById('back-button')); document.getElementById('ucjs_back-forward-item').appendChild(document.getElementById('forward-button'));Code
Alles anzeigen// Mehr-Werkzeuge-Schaltfläche verschiebbar try { CustomizableUI.createWidget({ id: 'ucjs_overflow-item', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem'); toolbaritem.id = 'ucjs_overflow-item'; toolbaritem.className = 'chromeclass-toolbar-additional'; toolbaritem.setAttribute('label', 'Mehr Werkzeuge'); return toolbaritem; } }); } catch(e) { }; document.getElementById('ucjs_overflow-item').appendChild(document.getElementById('nav-bar-overflow-button'));
Bekommt man die mittlere Leiste noch weg?Ja, hiermit:
Zum Testen in der Browserkonsole gibt man einfach die gewünschten Codes ein.
Für ein userChromeJS-Skript schreibt man am Beginn:
dann folgen die gewünschten Codes nacheinander,
und am Ende soll stehen: -
Tabs und Adressleiste: wahrscheinlich ja.
Kümmern wir uns zunächst um die Reihenfolge in der Menüleiste. Teste:Codevar tb = document.getElementById('toolbar-menubar'); var uc = document.getElementById('urlbar-container'); var sbb = document.getElementById('sidebar-button') tb.insertBefore(document.getElementById('back-button'), sbb); tb.insertBefore(document.getElementById('forward-button'), sbb); tb.insertBefore(document.getElementById('reload-button'), sbb); tb.insertBefore(document.getElementById('stop-button'), sbb); tb.appendChild(uc); -
Soll unmittelbar links vom Zurück-Button der Sidebar-Button stehen?
-
-
Teste folgenden Code. Die Breite ist noch nicht verändert.
Codevar tb = document.getElementById('toolbar-menubar'); var uc = document.getElementById('urlbar-container'); tb.appendChild(uc); tb.insertBefore(document.getElementById('back-button'), uc); tb.insertBefore(document.getElementById('forward-button'), uc); tb.insertBefore(document.getElementById('reload-button'), uc); tb.insertBefore(document.getElementById('stop-button'), uc); -
Setze in about:config devtools.chrome.enabled auf true und öffne danach die Browserkonsole, dann ist die Eingabezeile vorhanden.
-
-
Ja:
Code
Alles anzeigen(function() { if (location != 'chrome://browser/content/browser.xul') return; var frameScript = function() { addEventListener('DOMContentLoaded', function(event) { var document = event.target; function getAnchor(element) { while (element && element.nodeName != "A") { element = element.parentNode; } return element; } document.addEventListener("click", function(e){ var anchor = getAnchor(e.target); if (!anchor || anchor.target || anchor.protocol == "javascript:" || e.isTrusted === false || !anchor.offsetParent || (e.isTrusted == null && !e.detail)) { return; } if (anchor.hostname != location.hostname) { anchor.target = "_blank"; } }); }); }; var frameScriptURI = 'data:,(' + frameScript.toString() + ')()'; window.messageManager.loadFrameScript(frameScriptURI, true); })();Das Skript aus #5 mit einer kleinen Änderung müsste es auch tun, sofern sich der Inhalt der Webseite nicht ändert:
Code
Alles anzeigen(function() { if (location != 'chrome://browser/content/browser.xul') return; var frameScript = function() { addEventListener('DOMContentLoaded', function(event) { var document = event.target; var hostname = document.location.hostname; var links = document.getElementsByTagName('a'); for (var link of links) { if (link.hostname != hostname && link.protocol != 'javascript:') { link.target = '_blank'; } }; }); }; var frameScriptURI = 'data:,(' + frameScript.toString() + ')()'; window.messageManager.loadFrameScript(frameScriptURI, true); })(); -
OpenLinkinTab
https://github.com/ardiman/userCh…r/openlinkintabkönnte man es so umbauen das es nur für eine Domain und ab Firefox 57 funktoniert ?
Ja. Teste folgendes Skript. Die Domain ist hier "https://www.camp-firefox.de".
Code
Alles anzeigen(function() { if (location != 'chrome://browser/content/browser.xul') return; var frameScript = function() { addEventListener('DOMContentLoaded', function(event) { var document = event.target; if (document.domain == 'www.camp-firefox.de') { var links = document.getElementsByTagName('a'); for (var link of links) { link.target = '_blank'; } }; }); }; var frameScriptURI = 'data:,(' + frameScript.toString() + ')()'; window.messageManager.loadFrameScript(frameScriptURI, true); })(); -
-
Eine neue Version von RevertBackForwardButton.uc.xul habe ich bereits fertig, sie ist nur noch nicht ausreichend getestet. Die CSS-Codes passen möglicherweise nicht für alle Betriebssysteme.
XML
Alles anzeigen<?xml version="1.0"?> <?xml-stylesheet href="data:text/css,@namespace%20url('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul');@namespace%20html%20url('http://www.w3.org/1999/xhtml'); %23ucjs_back-button { list-style-image: url('chrome://browser/skin/back.svg'); } %23ucjs_forward-button { list-style-image: url('chrome://browser/skin/forward.svg'); } %23ucjs_back-button > .toolbarbutton-menu-dropmarker, %23ucjs_forward-button > .toolbarbutton-menu-dropmarker { display: none !important; } %23nav-bar %23ucjs_back-button, %23nav-bar %23ucjs_forward-button { margin: 0 -4.6666px; } %23nav-bar { height: 38px !important; } %23urlbar-wrapper { margin-left: 2px !important; } %23identity-box { padding-left: 5px !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar { margin: 0 3px !important; padding: 0 !important; -moz-border-start: 1px solid ThreeDShadow !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar:-moz-lwtheme { -moz-border-start: 1px solid rgba(0,0,0,.32) !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar:not(:-moz-system-metric(windows-classic)):not(:-moz-lwtheme) { border-color: hsla(210,54%,20%,.25) hsla(210,54%,20%,.27) hsla(210,54%,20%,.3) !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar:not(:-moz-system-metric(windows-classic)):not(:-moz-lwtheme)[focused] { border-color: Highlight !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar:-moz-locale-dir(ltr) { border-top-left-radius: 2px !important; border-bottom-left-radius: 2px !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper > %23urlbar:-moz-locale-dir(rtl) { border-top-right-radius: 2px !important; border-bottom-right-radius: 2px !important; } window:not([chromehidden~='toolbar']) %23urlbar-wrapper { clip-path: none !important; -moz-margin-start: 0px !important; } %23back-button, %23forward-button { display: none; } " type="text/css"?> <overlay id="revertBackForwardButton" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <!-- // ==UserScript== // @name revertBackForwardButton.uc.xul // @namespace http://blogs.yahoo.co.jp/alice0775 // @description Revert Back Forward Button // @include main // @compatibility Firefox 55+ // @author Alice0775 // @version 2014/05/25 06:30 fix style Firefox29, 30 // @version 2014/05/25 05:30 fix shift urlbar when disabled button // @version 2014/05/25 01:30 fix left border color of URLBar // @version 2014/05/15 01:30 add class chromeclass-toolbar-additional // @version 2014/05/15 01:30 fix color // @version 2014/05/13 10:30 fix second window // @version 2014/05/13 09:50 remove config // @version 2014/05/13 09:30 fix second window // @version 2014/05/13 07:35 fix darktheme // @version 2014/05/12 08:30 Working on Firefox29+ // @note not support combined Stop Reload Button / large icons // ==/UserScript== --> <script type="application/x-javascript" xmlns="http://www.w3.org/1999/xhtml"><![CDATA[ var revertBackForwardButton = { init: function() { try { CustomizableUI.createWidget({ //must run createWidget before windowListener.register because the register function needs the button added first id: 'ucjs_back-button', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton'); var props = { id: "ucjs_back-button", class: "toolbarbutton-1 chromeclass-toolbar-additional", label: "Zurück", command: "Browser:BackOrBackDuplicate", onclick: "checkForMiddleClick(this, event);", oncommand: "BrowserBack(event);", tooltiptext: "Eine Seite zurück", context: "ucjs_back_forward-button_menupopup" }; for (var p in props) { toolbaritem.setAttribute(p, props[p]); } return toolbaritem; } }); } catch(ee) {} try { CustomizableUI.createWidget({ //must run createWidget before windowListener.register because the register function needs the button added first id: 'ucjs_forward-button', type: 'custom', defaultArea: CustomizableUI.AREA_NAVBAR, onBuild: function(aDocument) { var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton'); var props = { id: "ucjs_forward-button", class: "toolbarbutton-1 chromeclass-toolbar-additional", label: "Vor", command: "Browser:ForwardOrForwardDuplicate", onclick: "checkForMiddleClick(this, event);", oncommand: "BrowserForward(event);", tooltiptext: "Eine Seite vor", context: "ucjs_back_forward-button_menupopup" }; for (var p in props) { toolbaritem.setAttribute(p, props[p]); } return toolbaritem; } }); } catch(ee) {} window.addEventListener("aftercustomization", revertBackForwardButton, false); revertBackForwardButton.SetClickAndHoldHandlers(); }, handleEvent: function(event) { switch(event.type) { case "aftercustomization": this.UpdateBackForwardCommands(gBrowser.webNavigation); break; } }, UpdateBackForwardCommands: function ucjs_UpdateBackForwardCommands(aWebNavigation) { if (aWebNavigation.canGoBack) { document.getElementById("ucjs_back-button").removeAttribute("disabled"); } else { document.getElementById("ucjs_back-button").setAttribute("disabled", true); } if (aWebNavigation.canGoForward) { document.getElementById("ucjs_forward-button").removeAttribute("disabled"); } else { document.getElementById("ucjs_forward-button").setAttribute("disabled", true); } }, /** * Click-and-Hold implementation for the Back and Forward buttons * XXXmano: should this live in toolbarbutton.xml? */ SetClickAndHoldHandlers: function SetClickAndHoldHandlers() { var timer; function openMenu(aButton) { cancelHold(aButton); aButton.firstChild.hidden = false; aButton.open = true; } function mousedownHandler(aEvent) { if (aEvent.button != 0 || aEvent.currentTarget.open || aEvent.currentTarget.disabled) return; // Prevent the menupopup from opening immediately aEvent.currentTarget.firstChild.hidden = true; aEvent.currentTarget.addEventListener("mouseout", mouseoutHandler, false); aEvent.currentTarget.addEventListener("mouseup", mouseupHandler, false); timer = setTimeout(openMenu, 500, aEvent.currentTarget); } function mouseoutHandler(aEvent) { let buttonRect = aEvent.currentTarget.getBoundingClientRect(); if (aEvent.clientX >= buttonRect.left && aEvent.clientX <= buttonRect.right && aEvent.clientY >= buttonRect.bottom) openMenu(aEvent.currentTarget); else cancelHold(aEvent.currentTarget); } function mouseupHandler(aEvent) { cancelHold(aEvent.currentTarget); } function cancelHold(aButton) { clearTimeout(timer); aButton.removeEventListener("mouseout", mouseoutHandler, false); aButton.removeEventListener("mouseup", mouseupHandler, false); } function clickHandler(aEvent) { if (aEvent.button == 0 && aEvent.target == aEvent.currentTarget && !aEvent.currentTarget.open && !aEvent.currentTarget.disabled) { let cmdEvent = document.createEvent("xulcommandevent"); cmdEvent.initCommandEvent("command", true, true, window, 0, aEvent.ctrlKey, aEvent.altKey, aEvent.shiftKey, aEvent.metaKey, null); aEvent.currentTarget.dispatchEvent(cmdEvent); } } function _addClickAndHoldListenersOnElement(aElm) { aElm.addEventListener("mousedown", mousedownHandler, true); aElm.addEventListener("click", clickHandler, true); } // Bug 414797: Clone the back/forward buttons' context menu into both buttons. let popup = document.getElementById("backForwardMenu").cloneNode(true); popup.removeAttribute("id"); // Prevent the back/forward buttons' context attributes from being inherited. popup.setAttribute("context", ""); let backButton = document.getElementById("ucjs_back-button"); backButton.setAttribute("type", "menu"); backButton.appendChild(popup); _addClickAndHoldListenersOnElement(backButton); let forwardButton = document.getElementById("ucjs_forward-button"); popup = popup.cloneNode(true); forwardButton.setAttribute("type", "menu"); forwardButton.appendChild(popup); _addClickAndHoldListenersOnElement(forwardButton); } }; if (location == 'chrome://browser/content/browser.xul') { revertBackForwardButton.init(); }; ]]></script> <popupset id="mainPopupSet"> <menupopup id="ucjs_back_forward-button_menupopup" onpopupshowing="return FillHistoryMenu(event.target);" oncommand="gotoHistoryIndex(event); event.stopPropagation();" onclick="checkForMiddleClick(this, event);" position="after_start" context="" /> </popupset> </overlay>