2002Andreas vielen Dank.
Ich hatte die Zeile mit
begonnen und das hat bei mir nicht funktioniert. Mit deiner Zeile ist alles bestens. Base64 De/Encoder habe ich schon verwendet und die Bildchen umgewandelt.
2002Andreas vielen Dank.
Ich hatte die Zeile mit
begonnen und das hat bei mir nicht funktioniert. Mit deiner Zeile ist alles bestens. Base64 De/Encoder habe ich schon verwendet und die Bildchen umgewandelt.
Darf ich nochmal auf eure Hilfe hoffen? Ich verwende das folgende Skript von aborix. Auch hier möchte ich den Bild-Code durch ein eingefügtes Bild ersetzen. Ich selber schaff es nicht.
//Author @aborix
(function() {
if (window.__SSi != 'window0')
return;
CustomizableUI.createWidget({
id: 'site-screenshot-button',
defaultArea: CustomizableUI.AREA_NAVBAR,
label: 'ScreenshotSite',
tooltiptext: 'ScreenshotSite',
onCommand: onCommand,
onCreated: function(button) {
button.style.listStyleImage = 'url(data:image/png;base64,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)';
}
});
function onCommand(event) {
let frameScript = function() {
const string = 'moz-extension://';
let n = 0;
addEventListener('DOMContentLoaded', function onLoad(event) {
content.setTimeout(function() {
let document = event.target;
if (!document.URL.startsWith(string))
return;
n++;
if (n == 2) {
document.querySelector('button.full-page').click();
/* document.querySelector('button.visible').click(); */
} else if (n == 3) {
removeEventListener('DOMContentLoaded', onLoad);
document.querySelector('button.highlight-button-download').click();
};
}, 100);
});
};
let frameScriptURI = 'data:, (' + frameScript.toString() + ')()';
let window = event.target.ownerGlobal;
window.gBrowser.selectedBrowser.messageManager.loadFrameScript(frameScriptURI, true);
let button = window.document.getElementById('screenshot-button');
if (button) {
button.click();
} else {
window.alert('Zum Erstellen eines Bildschirmfotos muss sich die Firefox-eigene Bildschirmfoto-Schaltfläche in einer Symbolleiste oder im Überhangmenü befinden.');
};
};
if (!CustomizableUI.getPlacementOfWidget('screenshot-button')) {
CustomizableUI.addWidgetToArea('screenshot-button', CustomizableUI.AREA_FIXED_OVERFLOW_PANEL);
};
})();
Alles anzeigen
Schon mal ein herzliches Dankeschön.
Mira_Belle Vielen Dank für deinen Rat in Beitrag #9
Ich verwende deine Version und habe sie noch für about:config umgebaut. Damit werden auch .png Dateien gut dargestellt:
Die Version von 2002Andreas habe ich nochmal kontrolliert: Ich hatte im Pfad keine " am Anfang und Ende. Nun würde auch dieses Skript funktionieren. Aber hier und bei Mitleser ist der Button leider nicht so breit, dass der Text lesbar ist.
Morgen werde ich daran gehen und meine zwei Screenshot-Button Skripte auch umarbeiten.
Leider habe ich heute kaum Zeit für das Thema. Vorab jedoch folgendes:
Das Skript von Mitleser funktioniert bestens. Jedoch möchte ich den Button in 62x32 px und nicht Standard.
Mira_Belle funktioniert auch. Nach Änderung der Größenangaben habe ich den Button wie gewünscht.
2002Andreas habe ich seinen Pfad durch meinen ersetzt. Das ergibt jedoch nur einen Platzhalter, kein Bild.
Aber nun muss ich mich um andere Dinge kümmern. Nochmals vielen Dank für das großartige Echo auf meine Anfrage.
Heissa Juchei! Ich danke euch Allen. Ich werde mal studieren um daraus zu lernen.
Ich habe vorhin schon mal probiert. Zeile 20 entfernt und dort aus dem Mira_Belle Skript bzgl. zweites Profil den entsprechenden Part eingefügt. Das hat aber nicht funktioniert. Ihr Beispiel zeigt, dass ich es am Ende hätte hinzufügen müssen.
Dass man statt des Base64 dort auch einfach den Pfad zu einer Datei angeben kann hätte ich gar nicht gedacht.
Und jetzt macht den PC aus und widmet euch euren Partnern oder anderen schönen Sachen.
milupo Was hast du geahnt?
Ich verwende folgendes Skript (von aborix?), das für den Button einen Base64 Code enthält:
/* aboutabout_ToolbarButton.uc.js */
// aboutabout-button.uc.js
(function() {
if (location != 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'aboutabout-ToolBarButton',
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: 'aboutabout-ToolBarButton',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: 'About:About',
tooltiptext: 'About:About',
style: 'list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAABmJLR0QA%2FwD%2FAP%2BgvaeTAAAACXBIWXMAACcPAAAnDwGrs%2B%2FJAAAAB3RJTUUH1AwRDyUGYuIbjQAAAwRJREFUOMuFkV1rWwUAhp%2BTnnNyPpOsbjVZsSC6sVHY1hXZ1RiIon%2FAC7%2BmF16Jv2RjwnDTXfiBoHUoanQLrDpvhMKgiHajq7NN89E0aU6bpM35zDnJOV5YpmMXPnfvzcPL%2BwoAFy9%2BPh4nPB3HcT6Oh4U4Jm%2FoSkHTtbyiyAVZlvOSLOYdx3V%2BujX%2F2tzc1dvsI1y%2B%2FNV7x6afeT%2BbMSVFVdDUNIqiMIpHhGFEGIYMwoixVIqG43Ll65uN%2B1370nZ57Vqw8E0g3Cgt9E%2FNHDdr9SbBICQMI6IoIkl4hPstC236CAefyLO49CfFYrFU%2B%2FLSK6m0LJqO4xEEIfVala3WJrqmYegaVrvJtSsXWL67SM12mDhUwB9EjOKEzPihl0mNnUulhARVkdF0jbkvPuZW6XsUJY2ma%2Bz2djhz5jQvvXiWqYkD%2FHZvlXsra1TrG3St1oB4NC4igKKkMXQDSRRRNQ1VVZEkGV03mDlxhEqlwrBapqNO8nt9i85W02%2F%2FemMBuCNG0RAhJaLrGrphYJomuq4hSTJpWeKTTz%2Fj2PGTvHH%2BHXIZgzfPv11bunn9AjAPrIuDcISQGkPXVQQgk8lgGBqiKJHNZZl4cpITJ2cwDB0vCEmGowgoAk2AVBAMIIkxNYmppw7T2Wkhjf2TTT1NLmOQyyiYmoTtOAxHw0feET0%2FIApD5GyaQiHP7Ows3%2F7wHTsHpqh3XTpDjeclEVkWsPsuw%2BFjAh%2FH9TBNheXlFYIgoDc5zQtnn%2BOw5bGo6hSXNzl9KqJvO48LfM%2FHdnyyXsirr7%2BF67r8aEW0dny6uzau51Hd3KbXc%2Bh0domiMAGSfwV%2BgG17eEHEs0enASgVb7P4xwq247Be3eBgHDH%2Fyx3Kq38l9Vp5A%2FAfClzPGz5YrYjt7Q6eH%2BC6HnnX5uelu%2FQTkqDd9MWg53xQut5rtxtrltX4ENh7KKitlz9ybOdd294Lt62mY7Wbvf5et9Xv71Z6PetBGA7WK1Dfv60DuP%2FdQABk4ByQAxrAJtDdrznif%2FgbTgGEQikOjI8AAAAASUVORK5CYII%3D)',
onclick: 'if (event.button == 0) { \
openTrustedLinkIn("about:about", "tab");\
}; '
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
} catch(e) { };
})();
Alles anzeigen
Kann man das ändern und statt dessen auf eine Datei zugreifen? Würde mir jemand von den Skript-Könnern die dafür notwendigen Zeilen einbauen?
Vielen Dank.
Hier hat wieder das Phänomen zugeschlagen, dass beim öffnen des Themas auf meinem PC nur 2 Einträge vorhanden waren. Dann wurde ich vom PC weggerufen und habe beim zurückkehren den Beitrag geschrieben.
Da waren eure Beiträge nicht zu sehen. Ich muss mir angewöhnen in solchen Fällen die Seite neu zu laden.
Sieht aus als ob er einen Tab angeheftet hat. Vielleicht will er das wieder los werden.
Vielleicht will er die Einträge abwechselnd hell/dunkel einfärben.
Um zu wissen ob es funktioniert und wie geschrieben, einfach eine Spielerei.
Nochmals vielen Dank für deine Arbeit und die Ausdauer.
Verstanden. Danke
Könnte ja sein, dass ein Thema bereits mit dem Mausklick auf gelesen umgeschaltet wird. Das hätte dann mit dem neuen Tab nichts zu tun.
Hallo,
wenn ich ein Thema im Forum anklicke öffnet sich dies im gleichen Tab. Wenn ich wieder die Seite zurück gehe ist das Thema ausgegraut.
Damit sich ein Thema in einem neuen Tab öffnet mache ich einen Mittelklick. Wenn ich diesen Tab schließe ist das Thema immer noch Fett.
Ist das so gedacht oder finde ich nur nicht die entsprechende Einstellung?
Vielen Dank für Anregungen.
Wie ich @mirabelle gerade im anderen Thread geschrieben habe war das eine schöne Spielerei. Hält meine alten grauen Zellen etwas auf Trab.
Hallo Mira_Belle,
seitdem ich das neue Skript nach deinen Anweisungen für Dharkness geändert habe funktioniert es bestens, auch aus der Statusleiste. Zwischenzeitlich habe ich mir beschriftete Buttons gefertigt und in jedem meiner derzeit 3 Profile dein Skript 2mal angelegt (ID geändert). So kann ich aus jedem Profil jederzeit die zwei anderen aufrufen. Ist zwar nicht nötig, aber eine schöne Spielerei.
Ihr Lieben,
vielen Dank für eure Tipps. Mit dem Erscheinen der offiziellen Version habe ich mit den Testversionen nicht mehr weiter gemacht.
Das Skript V1.11 vom 18.08.2023 musste ich ändern wie für Dharkness beschrieben. Seitdem funktioniert alles bestens, auch aus der Statusleiste.
Das Skript von 2002Andreas habe ich gerne angenommen und verwende es jetzt.
ZitatDort habe ich die Buttons von Erweiterungen und Skripten. Auch der Button für die Testversionen ist dort gelandet.
Wenn ich den Button nun dort heraus nehme und oben rechts z.B. neben das Puzzleteil platziere funktionieren alle Testversionen einwandfrei.
Darauf haben 2002Andreas und Horstmann geantwortet, dass sie das Skript auch verwenden und bei ihnen der Button auch dann funktioniert wenn er in dieser Statusleiste unten abgelegt ist. Also werde ich weiter suchen bis mir das auch gelingt.
Hat jetzt nichts mehr mit dem Skript an sich zu tun.
Und ich werde weiter suchen.
Ich denke ich habe die Ursache gefunden, zumindest für meine Profile:
Ich verwende folgendes Skript für eine Statusleiste am unteren Bildrand.
// Statusleiste unten
(function() {
if (location != 'chrome://browser/content/browser.xhtml')
return;
var tb = document.createXULElement('toolbar');
tb.id = 'new-toolbar';
tb.setAttribute('customizable', true);
tb.setAttribute('mode', 'icons');
var vbox = document.createXULElement('vbox');
document.getElementById('navigator-toolbox').parentNode.parentNode.insertBefore(
vbox, document.getElementById('browser-bottombox'));
vbox.style.backgroundColor = '';
vbox.appendChild(tb);
CustomizableUI.registerArea('new-toolbar', {legacy: true});
CustomizableUI.registerToolbarNode(tb);
})();
Alles anzeigen
Dort habe ich die Buttons von Erweiterungen und Skripten. Auch der Button für die Testversionen ist dort gelandet.
Wenn ich den Button nun dort heraus nehme und oben rechts z.B. neben das Puzzleteil platziere funktionieren alle Testversionen einwandfrei.
Im neuen Profil(3) hatte ich den Chrome Ordner mit config.js angelegt und darin den Icons Ordner. Danach erst mal zwei Skripte und ein Testversion_1. Nichts hat funktioniert. Nach 3 mal Fehlerbehebungsmodus ging plötzlich alles, auch _1a und _2a. Warum??
Auf meinem alten Notebook habe ich es auch probiert und die Fehler erhalten. Dort habe ich FF bereinigt, danach nur den Chrome-Ordner von meinem Testprofil(2) übernommen. Nach Fehlerbehebungsmodus arbeiten auch dort alle Testversionen_1 bis _2a,
Mein Hauptprofil und Testprofil(2) haben den Fehler noch. Ich werde wohl auch hier mit Bereinigung ran müssen.