Hast du auch mal die 'userChromeShadow.css' ausgeschaltet, falls von dir benutzt?
Auch dann keine Besserung.
Hast du auch mal die 'userChromeShadow.css' ausgeschaltet, falls von dir benutzt?
Auch dann keine Besserung.
Hab jetzt das userChromeShadow.css von chrome-ordner entfernt, nützt aber auch nichts.
Und ich markiere das Script immer blau dann mit rechtsklick kopieren und dann im editor einfügen.
Keine Ahnung wo ich da schauen muss. Sorry.
Nachdem Firefox gestartet wurde [STRG+SHIFT+J] drücken.
Nein habe kein Scripte entfernt und keine Ahnung ob da ein AddOn dazwischen funkt.
Das kann man eigentlich auch nur testen, in dem man alle anderen Skripte eben mal temporär entfernt z.B. umbenennt z.B. "xxxx.uc.js___" oder verschiebt. Auch ein AddOn kann man temp. deaktivieren, dann weiß man , ob es dazwischen funkt.
Falls überlesen:
Erhöhe in meinem Skript mal die Werte in Zeile 52 und Zeile 59. Zum Testen ruhig mal auf '1000'!
Bei mir funktioniert das Skript aus #34 leider auch nicht!
Was mir aber aufgefallen ist, Zeile 43 die Variable position wird nirgendwo aufgerufen!
Könnte es daran liegen?
Erhöhe in meinem Skript mal die Werte in Zeile 52 und Zeile 59. Zum Testen ruhig mal auf '1000'!
habe das 100 und 50 beide auf 1000 aber funkt auch nicht
Nochmals getestet in neuem Nightly-Profil.
Nur Restart-Skript und dein Skript aus #34.
Restart läuft, das andere nicht...
Morgen such ich weiter - gute Nacht erstmal...
Nachdem Firefox gestartet wurde [STRG+SHIFT+J] drücken.
Bei mir funktioniert das Skript aus #34 leider auch nicht!
Und das Skript aus #14 läuft? oder geht das auch nicht?
Was mir aber aufgefallen ist, Zeile 43 die Variable position wird nirgendwo aufgerufen!
Ooops, das stimmt, danke. Ist vom Testen übriggeblieben ...
Könnte es daran liegen?
Unwahrscheinlich, weil dann in der Konsole auch etwas stehen müsste, aber es gehört natürlich wieder entfernt.
Hier noch mal das Skript, ohne die Zeile:
(function() {
if (!window.gBrowser)
return;
function setFunction() {
const css =`
.countClass::after {
content: attr(data-value);
color: red;
}
`;
const sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
const uri = Services.io.newURI('data:text/css,' + encodeURIComponent(css));
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
let persToolBar = document.getElementById('PersonalToolbar');
persToolBar.addEventListener('popupshowing', function onPopupShowing(aEvent) {
let popup = aEvent.originalTarget;
for (let item of popup.children) {
if (item.localName != 'menu' || item.id?.startsWith('history'))
continue;
setTimeout(() => {
let itemPopup = item.menupopup;
itemPopup.openPopup();
itemPopup.hidePopup();
let menuitemCount = 0;
let menuCount = 0;
for (let subitem of itemPopup.children) {
if (subitem.classList.contains('bookmark-item') && !subitem.disabled && !subitem.hidden) {
if (subitem.localName == 'menuitem') {
menuitemCount++;
} else if (subitem.localName == 'menu') {
menuCount++;
}
}
}
let label = item.childNodes[1]; //label.menu-iconic-text
label.classList.add('countClass');
let strCountOut = " (" + menuCount + "/" + menuitemCount + ")"
label.setAttribute('data-value', strCountOut);
}, 100);
}
});
}
setTimeout(function() {
setFunction();
},50);
})();
Alles anzeigen
omar1979 :
Also starten tut er schon mal korrekt. Jetzt wäre es natürlich interessant, ob sich in der Konsole was tut, wenn du die Lesezeichen-Ordner mal öffnest, so dass die entsprechenden Events im Skript auch aktiviert werden.
Bei mir funktioniert das Skript aus #34 leider auch nicht!
Und das Skript aus #14 läuft? oder geht das auch nicht?
Nein, leider auch nicht.
Das originale Skript funktioniert aber, und das komplette "Lable" konnte ich darin auch einfärben.
Nachtrag!
In der Konsole wird auch kein Fehler angezeigt, das Skript wird fehlerfrei geladen!
Fri Jul 07 2023 00:22:26 GMT+0200 (Mitteleuropäische Sommerzeit) userChromeJS userChrome.loadScript: [UChrm]/scripts/#Test_2.js
Nur es "passiert" nichts.
Hier läuft alles gut, aber ich bastel auch nicht unqualifiziert an allen Skripten rum....
getestet auf: WIN7, WIN10, WIN11, LIN_Mint_Vera....
Dankeschön: @BrokenHeart .....
Hallo BrokenHeart.
Danke für diese Script.
Hier funktioniert es in der Lesezeichenleiste in den Unterodnern.
Nur in Menü - Lesezeichen tut sich nichts.
Browserkonsole keine Meldung.
Mfg.
Endor
Hallo BrokenHeart.
Danke für diese Script.
Hier funktioniert es in der Lesezeichenleiste in den Unterodnern.
Nur in Menü - Lesezeichen tut sich nichts.Browserkonsole keine Meldung.
Mfg.
Endor
Jetzt wo Du es erwähnst, ja in der Lesezeichenleiste in dem dortigen Überhang funktioniert es.
Moin
Das Skript funktioniert bei mir auch (Win 10, FF115).
Und das sogar besser als ein älteres, welches nach irgend einem FF-Update beim ersten Aufruf eines Ordners (mit weiteren Unterordnern und LZ) einen Anzeigebug verursacht hat.
Hier mal der Code vom bisher genutzten Skript:
(function() {
if (!window.gBrowser)
return;
function setFunction() {
PlacesViewBase.prototype._onPopupShowing = function PVB__onPopupShowing(aEvent) {
let popup = aEvent.originalTarget;
this._ensureMarkers(popup);
if ("_delayedRemovals" in popup) {
while (popup._delayedRemovals.length) {
popup.removeChild(popup._delayedRemovals.shift());
}
}
if (popup._placesNode && PlacesUIUtils.getViewForNode(popup) == this) {
if (!popup._placesNode.containerOpen) {
popup._placesNode.containerOpen = true;
}
if (!popup._built) {
this._rebuildPopup(popup);
}
this._mayAddCommandsItems(popup);
}
/* original function end */
for (let item of popup.children) {
if (item.localName != 'menu' || item.id?.startsWith('history'))
continue;
setTimeout(() => {
let itemPopup = item.menupopup;
itemPopup.openPopup();
itemPopup.hidePopup();
let menuitemCount = 0;
let menuCount = 0;
for (let subitem of itemPopup.children) {
if (subitem.classList.contains('bookmark-item') && !subitem.disabled && !subitem.hidden) {
if (subitem.localName == 'menuitem') {
menuitemCount++;
} else if (subitem.localName == 'menu') {
menuCount++;
}
}
}
if (!item.labelOriginal) {
item.labelOriginal = item.label;
}
item.labelSuffix = ' (' + menuCount + '/' + menuitemCount + ')';
// item.setAttribute("id", "menu-menuitem-count");
// item.labelSuffix.setAttribute("color", "red");
// item.labelSuffix = className("menu-menuitem-count");
// item.labelSuffix.className = "menu-menuitem-count";
// menuitemCount.setAttribute("id", "menu-menuitem-count");
item.label = item.labelOriginal + item.labelSuffix;
}, 100);
}
popup.addEventListener('popuphidden', function onPopuphidden(event) {
if (event.target != this)
return;
popup.removeEventListener('popuphidden', onPopuphidden);
for (let item of popup.children) {
if (item.localName == 'menu') {
if (item.labelOriginal) {
item.label = item.labelOriginal;
item.labelOriginal = undefined;
}
}
}
});
}
}
setTimeout(function() {
setFunction();
},50);
})();
Alles anzeigen
Danke BrokenHeart
Hallo zusammen, ach, Herrje!
Also für die Leute, bei denen es funktioniert:
Gern geschehen...
Für die Leute, bei denen es nicht läuft:
Ich hatte jetzt das gleiche Problem in der 102.13.0 ESR Version. Keine Fehlermeldung im Log, einfach nur keine Anzeige.
Ich habe es dann mal debuggt und festgestellt, dass jede einzelne Anweisung korrekt ausgeführt wird, aber bei der Zeile
label.setAttribute('data-value', strCountOut); keine Ausgabe erfolgt. Wenn ich einen anderen "Elternknoten" benutze, dann zeigt er etwas an. Es wäre gut, wenn diese Leute mal dieses geänderte Skript testen würden (nicht wundern, im Skript befinden sich massig Log-Meldungen, die Infos ausgeben; die Ausgabe im Lesezeichen-Menü erfolgt hierbei rechtsbündig, vor dem Pfeil):
(function() {
if (!window.gBrowser)
return;
function setFunction() {
console.log( "---------------------------Test: Position-0" );
const css =`
.countClass::after {
content: attr(data-value);
/*content: " 978347234 "; */
color: red;
}
`;
const sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
const uri = Services.io.newURI('data:text/css,' + encodeURIComponent(css));
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
let persToolBar = document.getElementById('PersonalToolbar');
persToolBar.addEventListener('popupshowing', function onPopupShowing(aEvent) {
console.log( "---------------------------Test: Position-1" );
let popup = aEvent.originalTarget;
for (let item of popup.children) {
console.log( "---------------------------Test: Position-2" );
if (item.localName != 'menu' || item.id?.startsWith('history'))
continue;
setTimeout(() => {
console.log( "---------------------------Test: Position-3" );
let itemPopup = item.menupopup;
itemPopup.openPopup();
itemPopup.hidePopup();
let menuitemCount = 0;
let menuCount = 0;
for (let subitem of itemPopup.children) {
if (subitem.classList.contains('bookmark-item') && !subitem.disabled && !subitem.hidden) {
if (subitem.localName == 'menuitem') {
menuitemCount++;
} else if (subitem.localName == 'menu') {
menuCount++;
}
}
}
console.log( "---------------------------Test: (MenuCount:" + menuCount + "/(MenuItemCount:" + menuitemCount + ")" );
let label = item.childNodes[3]; //label.menu-iconic-text
label.classList.add('countClass');
let strCountOut = " (" + menuCount + "/" + menuitemCount + ")"
label.setAttribute('data-value', strCountOut);
console.log( "---------------------------Test: Position-4" );
}, 100);
}
});
}
setTimeout(function() {
setFunction();
},50);
})();
Alles anzeigen
Nur in Menü - Lesezeichen tut sich nichts.
Die Funktionalität besitzt das Skript von mir (noch) nicht, da ja nur die Lesezeichenleiste abgefragt wird:
persToolBar.addEventListener('popupshowing', function onPopupShowing(aEvent)
Hier noch mal das Skript, ohne die Zeile:
Das sieht hier dann in Fx 115 so aus:
Scheint also alles einwandfrei dann zu sein.
Fx 117:
Scheint also alles einwandfrei dann zu sein.
Andreas, noch eine Bitte:
Du hast doch sicher auch die 102ESR. Könntest du mal das Skript aus #48 dort testen und dann das Skript aus #54? Was zeigt er dir bei beiden an an?
In dem Skript #48 zeigt er hier nichts an,
mit dem Skript aus #54 das hier:
Danke im Voraus...
In dem Skript #48 zeigt er hier nichts an,
Ist hier auch so.
mit dem Skript aus #54 das hier:
Ist hier auch so.
Vielen Dank für den Test . Dann ist der Fehler zumindest mal lokalisiert...
Jetzt wäre noch interessant, wenn irgendjemand, bei dem es bisher gar nicht läuft, das Skript aus #54 in Firefox 115 testen würde...
Vielen Dank für den Test
Wenn du dir diese viele Arbeit machst, dann ist das doch selbstverständlich, dass ich meinen möglichen Teil auch dazu betrage
PS:
Auch wenn ich das Skript für mich nicht brauche.
Jetzt wäre noch interessant, wenn irgendjemand, bei dem es bisher gar nicht läuft, das Skript aus #54 in Firefox 115 testen würde...
Test!
Funktioniert, schaut genau so aus, wie im Beitrag #52.
Berichtigung!
Habe den Firefox neu gestartet, nun sind die "Einträge" hinten direkt vor den Pfeilen.
So wie es wohl sein soll.