Userstyle/Userscript: Text ersetzen (Beispiel: Navilink)

  • Moin.

    Ein Standardfall:
    der Websitebetreiber vergibt unpassende, inkonsistente, irreleitende oder einfach nur unschöne Bezeichner für - zum Beispiel - Navigationslinks.

    Nehmen wir den günstigen Fall, dass das betroffene LI- oder A-Element eine ID besitzt.

    Beispiel von der Google-Ergebnisseite:

    Code
    <li id="lr_" class="tbos" onclick="return google.Toolbelt.tbosClk(event)">Das Web</li>
    <li id="lr_lang_1de" class="tbou">
    <a class="q qs" href="/search?q=wolfteam&hl=de&safe=off&prmd=ivns&source=lnt&tbs=lr:lang_1de&lr=lang_de&sa=X&ei=***&ved=***">Seiten auf Deutsch</a>

    Ich möchte "Das Web" ersetzen durch "Seiten in gewählten Sprachen".

    Bitte beachtet: Es geht mir nicht allein um diesen Einzelfall, sondern um eine allgemein verwendbare Lösung.

    Per CSS fiel mir bisher keine Lösung ein.

    Euch vielleicht?

    Die CSS3 Eigenschaft text-replace, die sich perfekt eignen würde, wird noch nicht unterstützt.

    Eine Ersetzung des Textes durch ein Bild kommt nicht in Frage, die Seite soll skalieren.
    Ein einfaches Hinzufügen von Text als "generated content" und ein "Ausblenden" des Originaltextes durch Verwenden einer Schriftfarbe, die der Hintergrundfarbe entspricht, fällt vermutlich auch aus, denn natürlich soll nicht mehr Platz eingenommen werden, als der neue Text-String benötigt.

    Falls es keine CSS-Lösung gibt: kennt jemand passenden Skriptcode für eine solche Ersetzung, so dass man die Aufgabe per Userscript (Greasemonkey) lösen könnte.
    (Ich habe keine Programmierkenntnisse, daher bin ich nicht in der Lage eigene Userscripts zu entwickeln.)

    Danke.

  • Zitat von Andreas Borutta

    Per CSS fiel mir bisher keine Lösung ein.

    Allein dieser Gedanke offenbart eine totale Unkenntnis der Sachlage.

    Mal einen rohen Gegenvorschlag umrissen:
    Helfe den Anwendern in diesem Forum, dann könnte auch dir geholfen werden.

  • Zitat von .Ulli

    Allein dieser Gedanke offenbart eine totale Unkenntnis der Sachlage.

    Mal einen rohen Gegenvorschlag umrissen:
    Helfe den Anwendern in diesem Forum, dann könnte auch dir geholfen werden.


    Es steht jedem frei, sich hier in gönnerhafter, paternalistischer und überheblicher Pose zu präsentieren.

    Ich habe kein Problem damit, wenn herauskommt, dass ich eine bestimmte Sachlage falsch eingeschätzt habe. Im Gegenteil.

    Unbelegte Behauptungen in einem öffentlich Forum sind allein eines: sinnlos.
    Und schlecht für die Atmosphäre.

    Zum Helfen:
    Du kannst da ganz beruhigt sein.
    Du weißt nichts darüber, wieviel Zeit ich über die Jahre in Hilfe für Firefox-Anwender gesteckt habe.

  • @ Andreas Borutta: Gucke mal dort:
    http://userscripts.org/scripts/search…+Filter&submit=

    Für meine relativ bescheidenen Zwecke genügt seit Jahren Profanity Filter By Mike E — Last update Jun 9, 2006.
    Zu editieren ist nur das Array der "Badwords" in Zeile 38 sowie der Ersatztext (voreingestellt ist ***) in Zeile 34.

    Vllt. ist aber auch Profanity Filter By Eric Tan — Last update Feb 20, 2011 besser für Dich geeignet, im Sourcecode verspricht der Autor Steigerungen.

    Zitat von Sourcecode des Userscripts von Eric Tan

    Improvements Needed:
    * Filter HTML attributes (ALT, TITLE, TOOLTIP, etc)
    * Add an interface to manage the words by turning this into an extension.


    Gruß gammaburst

  • gammaburst
    Danke für Deinen Hinweis.
    Wenn ich die Nutzungsweise des Skriptes richtig verstehe, kann man damit Wörter, die an beliebiger Stelle vorkommen durch ein anderes Wort ersetzen.

    Ich möchte jedoch Wörter nur dann ersetzen, wenn sie an einer ganz bestimmten Stelle vorkommen.
    Diese Stelle ist eindeutig durch die ID des jeweiligen HTML-Elementes bestimmbar.