Wenn du testen magst:
Ich mag
Aber ich poste es jetzt trotzdem mal...
Beide Versionen funktionieren! Jetzt hab ich die Qual der Wahl...
Vielen Dank euch beiden
Wenn du testen magst:
Ich mag
Aber ich poste es jetzt trotzdem mal...
Beide Versionen funktionieren! Jetzt hab ich die Qual der Wahl...
Vielen Dank euch beiden
Vielen Dank euch beiden
Gerne wie immer
Jetzt hab ich die Qual der Wahl...
K.A. welches Skript das bessere ist
Ich möchte noch mal vorsichtig an das WetterfuchsScript
Was das Menü usw. betrifft, das werde ich mir mal anschauen.
Das schon länger bekannte Grundproblem kann ich leider nicht beheben.
Melde mich.
Edit:
Das geht mal wieder weit über mein Können hinaus.
Wie muss man das ändern.
let menuitem = document.createXULElement('menuitem');
menuitem.setAttribute('label', item[0]);
menuitem.setAttribute('oncommand', item[1]);
menupopup.appendChild(menuitem);
};
Dann ist noch die Schaltfläche selber:
CustomizableUI.createWidget({
id: 'wetterfuchs-toolbarbutton',
type: 'custom',
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var attributes = {
id: 'wetterfuchs-toolbarbutton',
class: 'chromeclass-toolbar-additional',
type: 'menu',
removable: 'true',
label: 'Wetterfuchs',
tooltiptext: 'Lokale und globale Wetter Infos',
oncontextmenu: "return false",
ondblclick: "if (event.button === 0) { wetterfuchs.openPanel(\'MO_Doppelklick\',event,\'b\')}",
onclick: "if (event.button === 1) {wetterfuchs.openPanel(\'MO_Mittelklick\',event,\'b\')};if (event.button === 2) {wetterfuchs.openPanel(\'MO_Rechtsklick\',event,\'b\')}",
style: 'list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAD+0lEQVQ4jb3Tf0zUZRwH8LdgEngngitiMVBXcxH4h+lmETndkqVIOYemrewH4ipJmCjmmDLJRmrKBkPgMNYSMYNN3cQ1YoG4ovjpwQEnX+644ziP7/fbHd9z4SnH8+4PxXIWtLX13j7bsz17Xtvz+TwP8H9lfXx02NT62HJd3JHlurgHe9GhYX9/appkx+k31m0JKtEBzzdlLLz08+6FlxcAz9VtCi7JjtNv/NfQ60sXJQJA/VocutVx6I77+9fGbl/fNeG7nu53X355zNu89W5DSkA+AGyIj1o1I1i1KtQglyzn2MUk/+TNYgq1nEIuohg9TuHK56Qtg2PfxftdJ2L4zStzK6azHgOwoDNRf9Q/kEPeqiJ/MwiqZaRSQsqFpOswhSNL0PEeJ9pXsDVBd1IH3ZMA5jyiFSwOWt//2eIfTF+lyt3XjrCvrZjjN0vJsQpSOUbezCQdH5D2N0nrBk6aYun5+nHF+KmusXDJ/JRHwI7UrS9WH05TW1quUZLMorOjlacNp9j/ay7p2kmquyhGd5HOHeTwNgrLq0J0hfPGhyE9BUA0gICHwIq8vNy2tva7DoeDZrOZNTU1rK6uZl1dPc+fr+HF2uOUBw9SKPtJ18fk8FZOGqPYsy34l1Ig9iEwBogs+uLzVpPJRIvFIoxGIxsaGihJEm02G212O43dfaysrKC9L4/05JDOHRTmeKHVzOaVJH1tInRPTHmBGe9v3/NTc/P40NAQrVYrJUni4ODgPcxm4/DwMB0OBzs6Onm2qpAj/bmcdKZTmBbRtD2o80pw4MZ9gB4AkJaWFnHhwoU7qqrS6XSKkZGRB5DL5aIsy1QUhaqq0uVycWBggF1d7aLlx+OcuB4hpMwQaz6w5P4rAVJSUhJ6e3vpdrupKAplWaYkSTSZTJRlmZqm0ev10uv1UtM0jo+P0+fzcXBIFj1nEiekzBDnt0vnffKgfytXrlxWX1/v93g8dLvdtFqt7O7uFhaLhXa7nYqiUNM0appGVVXp8/mE3+/nrdvjrMrY214FJJUBkX8dSkRycvKpsrIy58VLl+5cbW6m0WgUHo+HsizT1NtLVVWpaRodIyNUVDdv+3x0jI6y8I017SeAp7OBuQBmTYEBAGL1ev27EWFhB/ZnZTkbm5rYb77BltZWGsrLRWPTVfaZB1h7tpKGL/ewsqTo992bNnXs0wfvBRD0T19vdjgQFQmkLwkPN2x+aVnbO3ExA6uB2p0vPGX7KOEZxzrgXE402rbMw7nVwOZS4NnpwKkEA4hZByRnAm/lA2tP6HHgaAgOngTW1ABJZ4AV9282awbrz2QBwQVAaCowpxiIMQCLUoE5ecD8t+/17D8l8H7NmD8Aw0h46qvM+RMAAAAASUVORK5CYII=)'
};
for (var a in attributes)
toolbaritem.setAttribute(a, attributes[a]);
appendMenupopup(toolbaritem);
return toolbaritem;
}
Alles anzeigen
Mfg.
Endor
K.A. welches Skript das bessere ist
Ich denke, dass die beiden Skripte funktional absolut identisch sind. Einmal wurde die Event-Funktion für den Button innerhalb der 'createWidget'-Funktion und das andere Mal außerhalb über die ID document.getElementById('Tooltip-button') hinzugefügt. Das macht keinen Unterschied.
Außerdem ist bei deiner Version noch die Zeile event.target.ownerGlobal.BrowserCommands.reload(); enthalten. Eigentlich ist ein Reload hier nicht nötig, kann auch kein abweichendes Verhalten feststellen . Habe aber jetzt auch nicht intensiv getestet...
dass die beiden Skripte funktional absolut identisch sind.
Hallo BrokenHeart ..
danke für die Erklärung.
Mir ging es mehr darum, welches der Skripte den besseren Code hat.
ein Reload hier nicht nötig
Ok, das war/ist in meinem Musterskript so enthalten.
Ich habe den einfach so übernommen, und nur die anderen Daten eingefügt.
PS:
Dann schlage ich mal deinen Code vor.
Vertikale Toolbar von Aris-t2 funktioniert im heutigen Nightly (24. Jan) nicht mehr
funktioniert im heutigen Nightly (24. Jan) nicht mehr
Siehe bitte hier:
Allerdings noch keine Lösung.
Wenn du das dann alles für nutzlosen Schrott hälst, dann ist das halt deine Meinung, genauso wie meine Meine ist.
Das habe ich nirgendwo behauptet, dass das, was du einbringst, nutzloser Schrott sei. Also bitte lass derartige Unterstellungen.
Sorry, war unangemessen....
Was deinen konstruktiven Vorschlag zum Thema betrifft, hatte ich dich noch in Schutz genommen, aber jetzt bist du es, der übers Ziel hinausschießt. Bitte zurück zum Thema kommen.
Wer einen anderen User (mich) einen beitragslosen nutzlosen Meckerer nennt - und das hast du
Das habe ich nicht. Auch noch so eine provozierende falsche Bemerkung. Was soll diese Aggressivität?
Mit ignoranten Beleidigungen kann ich umgehen, bei billigen Ausreden ist Schluss.
Was für billige Ausreden und ich hoffe, das mit den „ignoranten Beleidigungen“ ist nicht auf mich gemünzt. Ansonsten wäre das noch so eine haltlose Unterstellung. Du solltest lieber mal meinen Beitrag #530 noch einmal in Ruhe lesen. Dort habe ich ganz sachlich meine Meinung geschrieben. Wenn du dich dadurch auf den Schlips getreten fühlst, mach das mit dir aus und lass das nicht an mir aus.
das hier scheint momentan zu funktionieren; […]
Generell hänge ich einfach den addEventlistener unten an, mit der ID des Buttons, und ausserhalb des oberen Codeabschnitts (...?).
[…]
Für das von dir verlinkte Script dann evtl: sowas […]
Danke, funktioniert!
Endor, ich hänge mein verändertes Skript mal an, damit du es bei GiHub hochladen kannst (aus einem unbekannten Grund werden übrigens beim Einfügen die Leerzeilen entfernt):
/* Entwicklerwerkzeuge-button.uc.js
*
* aborix in https://www.camp-firefox.de/forum/thema/124672/?postID=1078103#post1078103
* Abwandlung eines Skriptes unbekannter Herkunft, vgl. Endor in
* https://www.camp-firefox.de/forum/thema/124672/?postID=1078019#post1078019
* diverse Edits: Speravir
*
* beachte Milupo in https://www.camp-firefox.de/forum/thema/112673/?postID=1189373#post1189373
* und https://www.camp-firefox.de/forum/thema/136363/?postID=1227506#post1227506
*
* letzte Aktualisierung durch Speravir in https://www.camp-firefox.de/forum/thema/138792/?postID=1264613#post1264613
* mit vorgeschlagener Änderung von Horstmann in
* https://www.camp-firefox.de/forum/thema/138792/?postID=1264536#post1264536
*/
(function() {
if (!window.gBrowser) return;
const
buttonID = 'entwickler-toolbarbutton',
labelText = 'Entwicklerwerkzeuge',
tooltip = labelText + ' öffnen/schließen',
css =
`#${buttonID} .toolbarbutton-icon {list-style-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAdUlEQVQokZVSwRHAIAgLPYfoXs7RCTpG53Avt7APrhaFU8gLMEEJAkEQgFbc7IxkVjt0r6Sp7VIVITumBpKt00FA2ThmjXzkfMMWO8EZFSj8LrUyjsG9b9DaJXq+qAIVxEUxtLHpaXE95dj1NcK2rmbwaGJ4Af0tIg00j/6iAAAAAElFTkSuQmCC')}`;
try {
CustomizableUI.createWidget({
id: buttonID,
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
let tb_button = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
let props = {
id: buttonID,
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: labelText,
tooltiptext: tooltip
};
for (let p in props) tb_button.setAttribute(p, props[p]);
return tb_button;
}
});
} catch(e) {};
document.getElementById(buttonID).addEventListener("click", () => { if(event.button === 0) document.getElementById('menu_devToolbox').click(); });
let stylesheet = document.createProcessingInstruction('xml-stylesheet', 'type="text/css" href="data:text/css;utf-8,' + encodeURIComponent(css) + '"');
document.insertBefore(stylesheet, document.documentElement);
setTimeout(function() {
if (document.getElementById('menuWebDeveloperPopup').childElementCount <= 5) {
let {require} = ChromeUtils.importESModule("resource://devtools/shared/loader/Loader.sys.mjs", {});
require("devtools/client/framework/devtools-browser");
};
}, 0);
})();
Alles anzeigen
Zu den IDs: Das halte ich für eine Schwäche vieler Skripte hier. Beispielsweise kommt die ID hier oben inzwischen viermal vor. da ist es wirklich besser, sie einer Variable zuzuweisen und diese dann wiederholt zu verwenden.
Vertikale Toolbar von Aris-t2 funktioniert im heutigen Nightly (24. Jan) nicht mehr
Nur als Hinweis: Ich habe Aris darauf hingewiesen. Er ist derzeit aber nicht aktiv, man kann also nicht sagen, ob und wann er Anpassungen durchführen wird.
Also ich habe diesen langen thread als Sammelthread angesehen und deswegen meine Frage hier reingepostet. Man muss ja nicht für jede Frage nen neuen thread machen.
Mit den neuen AI addons in VScode konnte ich im übrigen in gerade mal 5 bis 10 Minuten alle meine oncommand handler tauschen. Nachdem man die erste Zeile angepasst hat, erkennt die AI was man mit den anderen Zeilen machen möchte.
Ulf3000 Alles i.O.
Mir ging es lediglich um die Übersichtlichkeit!
Es stellt sich mir dann aber auch die Frage, wo für ein Forum in einzelne Bereiche unterteilt wird,
und wofür diese wiederum einzelne Threads haben. Kann man ja immer alles in einem Sammelthread unterbringen.
Ich hoffe, es kommt rüber, was ich damit sagen will!
offtoppic: Ich nutze auch VScode, welche Add-ons wären das und sind diese Kostenpflichtig?
Ich kann den Gedanken schon nachvollziehen, auch wenn ich keine Scripte nutze. In diesem Thema werden alle Scripte behandelt, und zwar gleichzeitig, mittendrin, davor, danach. Aber keines der Scripte hat seinen eigenen Faden. Wenn ich nur eines nutzen würde, wäre ich gezwungen, 27 Seiten durchzulesen, zu überfliegen, ggf die Seitensuche anzuwenden. Es würde wesentlich mehr Zeit in Anspruch nehmen, das Endergebnis zu finden, oder gar die Ergebnisse, weil manch einer noch eigene Anpassungen dazu pflegt. Aus meiner Sicht wäre es für alle praktischer gewesen, für jedes Script ein einzelnes Thema zu spendieren. Und bei der Häufigkeit, oder Wichtigkeit, wäre ich sogar dafür, ein Unterforum zu gründen, damit es komplett abseits von den sonst üblichen Fragen zur Anpassung gelesen und genutzt werden kann.
In diesem Thema werden alle Scripte behandelt, und zwar gleichzeitig
Nur meine pers. Meinung!
Das hat sich in diesem Thread nun mal so ergeben. Inzwischen dürften auch die meisten Skripte angepasst sein.
für jedes Script ein einzelnes Thema zu spendieren
Im Normalfall ist das ja auch so. Und wenn der Tag X kommt, werden einigen User feststellen, dass div. ihrer Skripte nicht mehr funktionieren, und dann wird jeweils ein neuer Thread dafür erstellt. Denn dieser hier ist dann längst in der Versenkung verschwunden.
für jedes Script ein einzelnes Thema zu spendieren.
Auch das wird dann unübersichtlich. Ich z.B. nutze 41 Skripte, Boersenfeger 76, und es gibt noch viel mehr Skripte. Wenn jedesmal ein neuer Thread erstellt wird, dann wären das auch mehrere Seiten, die man durchsuchen müsste. Und oft ist es ja auch so, das User eine eigene Bezeichnung für ihr Skript haben, was die Suche dann auch nicht einfacher macht.
ein Unterforum zu gründen
Auch da wären dann zig Skripte drin, also auch nicht viel übersichtlicher.
Ansonsten, alle inzwischen angepasste Skripte sind auf der Seite von Endor vorhanden. Also auch da könnte jeder dann erstmal nachsehen, ob sein Skript dabei ist:
Das gilt dann auch für die Seite von Aris, der viele von uns genutzte Skripte/CSS Codes erstellt hat.
Dann gibt es halt 41 oder 76 Threads zu, wo ist denn das Problem? Oder jeder Nutzer bekommt sein eigenes Thema, wenn das leichter umzusetzen ist. Wenn die Scripte dieselben sind, reicht vielleicht ein Thema. Aber du bzw. ihr macht es allen andere einfach nur extrem schwer durch so ein Monsterthema. Du hast für dich dieses Thema gestartet, spricht nichts dagegen. Unübersichtlich wurde es durch "ich hab auch probleme, aber mit script xyz". Dann am besten von Anfang an festlegen: Das ist mein Thema, hier geht es nur um meine Scripte. Man hätte also ganz bequem das hier anwenden können:
Zitat5.1 Eigene Themen eröffnen
Während es in manchen Foren üblich ist, sich an bestehende Themen dranzuhängen, bitten wir Nutzer in diesem Forum, für ihre Probleme jeweils eigene Themen zu erstellen
Und genau das ist passiert, abweichende Scripte mit Folgeantworten.
Dadurch, das ihr jetzt hier in diesem Thread über das Problem diskutiert, wird die Übersichtlichkeit aber auch nicht erhöht...
Dann gibt es halt 41 oder 76 Threads
Im Normalfall durchsucht eh keine User diese Threads.
Es werden ja oft sogar die auf Seite 1 nicht alle angesehen, sondern gleich ein neues Thema erstellt.
Aber egal, es war ja auch nur meine pers. Meinung dazu.
Ulf3000 Alles i.O.
Mir ging es lediglich um die Übersichtlichkeit!
Es stellt sich mir dann aber auch die Frage, wo für ein Forum in einzelne Bereiche unterteilt wird,
und wofür diese wiederum einzelne Threads haben. Kann man ja immer alles in einem Sammelthread unterbringen.
Ich hoffe, es kommt rüber, was ich damit sagen will!offtoppic: Ich nutze auch VScode, welche Add-ons wären das und sind diese Kostenpflichtig?
Entweder codium oder Gemini Code Assist.. Ich hab beide installiert. Eins von beiden liefert ab XD