Markiertem Text einen Link hinterlegen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Markiertem Text einen Link hinterlegen

    Guten Tag

    Ich möchte im Browser die Option anbieten, Text markieren zu könnnen, danach einen Button zu drücken welcher eine Funktion aufruft um dem markierten Text einen Link zu hinterlegen. Doch irgendwie klappt das nicht so ganz. Ich kriege immer die Fehlermeldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht. Hier der Quellcode der von Relevanz ist.

    function createLink()
    {
    parent.ieEdit.focus();
    var str = prompt("Wohin möchten Sie verlinken?", "http:\/\/www.domain.ch");

    .....

    else
    {

    if (window.getSelection) var sel = window.getSelection();
    else if (parent.ieEdit.document.getSelection) var sel = parent.ieEdit.document.getSelection();
    else if (parent.ieEdit.document.selection) var sel = parent.ieEdit.document.selection.createRange().text;

    sel.pasteHTML("<A HREF=\"" + str + "\">" + sel + "</A> ");
    sel.select();
    }

    Kann mir jemand weiterhelfen?

  • #2

    getSelection bezieht sich auf ListBoxen mir Mehrfachauswahl ... meines Wissens gibt's keine Möglichkeit mit JavaScript auf den selektieren Text zuzugreifen ...
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Zugriff klappt

      Doch der Zugriff klappt. Ich habs getestet mit einem Alert Fenster. Der markierte Text wird sauber ausgelesen. Das Problem liegt irgendwo bei sel.pasteHTML... Sobald ich diesen Teil einfüge erhalte ich die Fehlermeldung.

      Kommentar


      • #4
        Hi,
        hab so ein Script aus einem Java Forum, es ist also NICHT von mir!
        Dabei geht allerdings kein Prompt auf, sonder es werden 2 tags um das markierte gemacht.
        Hoffe aber dass dir das weiterhilft.

        Formular muss den Namen FORMULAR bekommen!
        Code:
        z.b. <form name=FORMULAR action=bla.php method=post>
        Hier das Java Zeugsel
        Code:
        <script language="Javascript">
        <!-- Kommentare für Browser, die kein Javascript unterstützen 
        // funktioniert nur im IE 4+ 
        	
        // Übergabeparameter: 
        // - form : Formularname 
        // - resultfield : Textareaname 
        // - tag : einzufügendes Tag 
        
        function insert_tags(form, resultfield, tag) 
        { 
        // Kompletter Inhalt des Textarea-Feldes 
        var FullString = resultfield.value; 
        	
        // Ausgewählter Bereich als String 
        var SelectedString = document.selection.createRange().text; 
        if (!SelectedString) 
        alert("Bitte Text markieren!") 
        else 
        { 
        // Erstellung eines regulären Ausdrucks für den ausgewählten Bereich 
        var RegExpSelect = new RegExp(SelectedString, "gi") 
        		
        // Hinzufügen der HTML-Tags 
        var ReplaceString = "["+tag+"]"+SelectedString+"[/"+tag+"]"; 
        		
        // Neuer String (kompl. Textarea-Feld) 
        var NewString = FullString.replace (RegExpSelect, ReplaceString); 
        
        // Text in den Textareabereich schreiben 
        resultfield.value = NewString; 
        } 
        document.FORMULAR.inhaltjava.focus(); 
        }
        -->
        </script>
        Das Textarea muss so aussehen:
        Code:
        <textarea name=inhaltjava cols=42 rows=10 class=feedback wrap=virtual></textarea>
        Button, mit dem man den markierten Text "umtagt"
        Code:
        <input class=buttons type=button name=bold value=URL 
        onClick="javascript:insert_tags(FORMULAR,inhaltjava,'[b]url[/b]')">
        Das fette url gibt immer das tag an, welches eingefügt werden soll.
        Anfangs- und Schlusstag müssen halt immer den gleichen string haben

        MfG
        Zuletzt geändert von GWC; 26.06.2002, 17:33.

        Kommentar

        Lädt...
        X