Wie einen Tooltip im Addon-Manager hinzufügen?

  • Hallo,
    ich habe u.a. mit den CSS-Skripten aus CleanestAddonManager die Anzeige im Addon-Manager komprimiert. Jetzt sind längere Beschreibungen der Addons nur noch teilweise zu lesen.
    [Blockierte Grafik: https://abload.de/img/screenshot_069l8rb0.png]
    Deshalb möchte ich mir die Beschreibung beim hover als Tooltip anzeigen lassen, so wie die Versionsnummer des Addons, wenn man mit der Maus über den Namen geht. Ich habe schon alles ver- und gesucht, es aber nicht hinbekommen. Im DOMi sieht das so aus
    [Blockierte Grafik: https://abload.de/img/screenshot_070x5yvf.png]
    Es geht also um den Inhalt von "value". Links im markierten Bereich steht als nodeName "XUL:label" und als class "description"
    Kann mir dabei jemand helfen?
    Dankeschön.

  • Ein Skript für den UserScriptLoader:

  • Der Tooltip über dem Addon-Namen wird angezeigt, aber nicht über der Beschreibung

    Edit: Ich meinte, dass über dem Addon-Namen der alte Tooltip angezeigt wird: Name mit Versionsnummer.
    Nachdem ich die Cleanest-AddonManager-CSS-Skripte deaktiviert (s. nächster Post) und wieder aktiviert hatte, hat sich der Tooltip über dem Namen in die Beschreibung geändert. Wahrscheinlich so, wie du es vorhattest. Bleibt nur noch die Frage aus dem nächsten Post nach zwei Tooltips.

    Einmal editiert, zuletzt von bege (29. August 2016 um 15:57)

  • Ah, Moment. Hast du den normalen Tooltiptext geändert, nicht einen weiteren für die Beschreibung hinzugefügt? Wenn ich nämlich alle Änderungen durch die CleanestAddonManager-CSS-Skripte ausschalte, wird über dem Addon-Namen nicht mehr der Name mit Versionsnummer, sondern die Beschreibung angezeigt.
    Dann kann ich die Addon-Versionsnummer nicht mehr sehen. Geht es auch, dem Element xul:label.description einen neuen Tooltip hinzuzufügen und den über dem Namen zu lassen?

  • Der Tooltip über dem Namen bleibt jetzt.
    Der zweite Tooltip ist über dem Anfang der Beschreibung.

    Code
    addEventListener('pageshow', function setTooltips() {
    	let addons = document.getElementsByClassName('addon');
    	for (let addon of addons) {
    		let description = document.getAnonymousElementByAttribute(addon, 'anonid', 'description');
    		description.setAttribute('tooltiptext', description.value);
    	};
    	removeEventListener('pageshow', setTooltips);
    });
  • Gerne. :)

    Die Tooltips existieren allerdings nur, solange die Seite nach dem Aufruf nicht verändert wird.
    Wechselt man zu einer anderen Kategorie, oder zu einer Detailanzeige und dann zurück, erscheinen sie nicht mehr. Das müsste extra eingebaut werden.

  • Das könnte erklären, warum in seltenen Fällen die Tooltips nicht gehen, auch nach dem direkten Aufruf des Managers. Ich vermute, dass, je nachdem zu welchem Zeitpunkt des Seitenaufbaus die CSS-Skripte die Seite verändern, das JS-Skript greift oder nicht. Wirklich schlimm ist das nicht, aber neugierig, wie der Seitenwechsel mit berücksichtigt wird, bin ich schon.

  • Eine Veränderung der Seite wird nun mitberücksichtigt:

  • Sapperlot hat der Kasper früher immer gesagt :)
    Fuzt einwandfrei. Wenn ich so was sehe, bewundere ich immer Menschen wie dich, die Javascript kapieren. Ich bin nach einigen Versuchen, das zu verstehen, mit rauchendem Kopf ausgestiegen.

    Ist es möglich, dem Attribut 'tooltiptext' zwei Werte zuzuweisen?: date-updated.value + Zeilenschaltung + description.value
    Dann bräuchte ich das Update-Datum nicht in der Zeile und könnte noch mehr Platz sparen.

  • Ja: