Tobi: Text durch Bild ersetzen

Hallo liebe Helfende.

Ich suche einen ganz einfachen JAVASCRIPT-Code, mit dem ich auf einer HTML-Seite bestimme Zeichenfolgen durch Bilder ersetzen kann.

Genauer: Wenn irgendwo auf einer Seite ":-D" oder ":-P" steht, soll dies durch z. B. Bild "laugh.gif" oder "aetsch.gif" ersetzt werden.

Hoffe es ist verständlich genug. Wäre schön, wenn einfach der Code gepostet werden könnte, da ich keinerlei Ahnung von JS habe.

Vielen Dank im voraus.

MFG Tobi

  1. @@Tobi:

    nuqneH

    Wäre schön, wenn einfach der Code gepostet werden könnte, da ich keinerlei Ahnung von JS habe.

    „Dies ist selfhtml, welches dir beim _lernen_ helfen will, und nicht gethtml, welches dir fertige Lösungen vor die Füße zu werfen hat.“ [wahsaga]

    Qapla'

    --
    Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
    1. @@Tobi:

      nuqneH

      Wäre schön, wenn einfach der Code gepostet werden könnte, da ich keinerlei Ahnung von JS habe.

      „Dies ist selfhtml, welches dir beim _lernen_ helfen will, und nicht gethtml, welches dir fertige Lösungen vor die Füße zu werfen hat.“ [wahsaga]

      Qapla'

      Gut, dann versuchen wir es eben so:

      Ich würde gerne lernen, wie man einen Text in einen anderen umwandelt (~<img src="../smiley.jpg">), denn die HTML-Kenntnisse, wie man ein Bild einfügt, besitze ich.

      Tut mir Leid für meine voerst "grüne" Fragestellung.

      MFG

      1. Hi,

        Ich würde gerne lernen, wie man einen Text in einen anderen umwandelt (~<img src="../smiley.jpg">), denn die HTML-Kenntnisse, wie man ein Bild einfügt, besitze ich.

        Bspw. durch Suchen-Ersetzen mittels regulärer Ausdrücke.

        Allerdings musst du erst mal an deinen „Text” rankommen - und auch das erfordert JavaScript-Grundkenntnisse und Wissen über den Umgang mit dem DOM.

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
    2. Wäre schön, wenn einfach der Code gepostet werden könnte, da ich keinerlei Ahnung von JS habe.

      „Dies ist selfhtml, welches dir beim _lernen_ helfen will, und nicht gethtml, welches dir fertige Lösungen vor die Füße zu werfen hat.“ [wahsaga]

      Typischer Fall von Betriebsblindheit.
      Es gibt Zitate, die darf man nicht ungestraft zitieren.

      mfg Beat

      --
      ><o(((°>           ><o(((°>
         <°)))o><                     ><o(((°>o
      Der Valigator leibt diese Fische
      1. @@Beat:

        nuqneH

        Typischer Fall von Betriebsblindheit.

        ??

        Es gibt Zitate, die darf man nicht ungestraft zitieren.

        Hat aber geholfen.

        Qapla'

        --
        Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
  2. Hoffe es ist verständlich genug. Wäre schön, wenn einfach der Code gepostet werden könnte

    Wenn ich den hätte würd ich ihn posten.

    da ich keinerlei Ahnung von JS habe.

    Was ich an deiner Stelle ändern würde, denn es scheint als würdest du das brauchen können.

    Schau dir mal <http://de.selfhtml.org/javascript/objekte/string.htm#replace@title=das hier> an.
    Hast du selbst in der Hand woher der HTML Code kommt? Ich würd die Ersetzung lieber gleich auf dem Server machen.

    1. Hast du selbst in der Hand woher der HTML Code kommt? Ich würd die Ersetzung lieber gleich auf dem Server machen.

      Nein leider nicht. Ich möchte das ganze auf einer öffentlichen Community mittels Greasemonkey verwenden. Falls zusätzliches Styesheet benötigt werden würde, was ich nicht glaube, würde ich Stylish verwenden.

      Sowohl Geasemonkey als auch Stylish sind Mozilla Firefox Addons.

      Schau dir mal das hier an.

      Bin daran - bisher aber noch kein Erfolg :D

      1. Ok, ich habe mich nun ein bisschen in die Tiefen der JS-Kunst geworfen :-D.

        Leider ohne Erfolg. Kann mich jemand auf die richtige Spur bringen und mir weiterhelfen. Mein Anliegen, denke ich, ist klar.

        Danke.

        Hier mein Quelltext:

          
        <html>  
          
        <head>  
        <title>Titel</title>  
        </head>  
          
        <body>  
          
        [code lang=javascript]<script language="JavaScript1.1" type="text/javascript"><!--  
          
                var SuchText= "";  
        		SuchText += ":-D";  
          
                var ErsatzText= "";  
        		ErsatzText += "<img src=\"http://www.ausgetauscht.de/bilder/person/usr/smiley_klein.png\">";  
          
          
          
                var QuellText= "";  
        		QuellText += ":-D <br> Hallo ich heiße Hans. :-D";  
          
          
          
          
        	function SuchenUndErsetzen(QuellText, SuchText, ErsatzText)  
                {  
                    // Fehlerpruefung  
          
                    if ((QuellText == null) || (SuchText == null))           { return null; }  
                    if ((QuellText.length == 0) || (SuchText.length == 0))   { return QuellText; }  
          
                    // Kein ErsatzText ?  
                    if ((ErsatzText == null) || (ErsatzText.length == 0))    { ErsatzText = ""; }  
          
                    var LaengeSuchText = SuchText.length;  
                    var LaengeErsatzText = ErsatzText.length;  
                    var Pos = QuellText.indexOf(SuchText, 0);  
          
                    while (Pos >= 0)  
                    {  
                        QuellText = QuellText.substring(0, Pos) + ErsatzText + QuellText.substring(Pos + LaengeSuchText);  
                        Pos = QuellText.indexOf(SuchText, Pos + LaengeErsatzText);  
                    }  
                    return QuellText;  
                } // -->  
                SuchenUndErsetzen();  
          </script>
        

        </body>

        </html>[/code]

        1. @@Tobi:

          nuqneH

          <script language="JavaScript1.1" type="text/javascript"><!--

          Das @language-Attribut ist sinnlos. Die HTML-Auskommentierung von JavaScript-Code auch. Weg mit beidem!

          var SuchText= "";
          SuchText += ":-D";

          Warum nicht gleich 'var SuchText = ":-D";'? Dasselbe bei ErsatzText und QuellText.

          function SuchenUndErsetzen(QuellText, SuchText, ErsatzText)
                  {
          --8<--
                      return QuellText;
                  } // -->

          Die Funktion liefert einen Rückgabewert. Fein. Zu der HTML-Auskommentierung s.o.

          SuchenUndErsetzen();

          Hier rufst du die Funktion auf und bekommst deren Rückgabewert. Was passiert dann weiter mit diesem? Nichts! Er wird nirgens ausgegeben.

          Qapla'

          --
          Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
          1. @@Gunnar Bittersmann:

            nuqneH

            SuchenUndErsetzen();

            Hier rufst du die Funktion auf und bekommst deren Rückgabewert.

            Welcher null ist, weil du die Funktion ohne Parameter aufrufst.

            Qapla'

            --
            Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)