ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
441
441
EMPFEHLEN
-
Guten Tag,
ich habe einen IFrame im design Modus und nun möchte ich den selektierten Text bekommen, inkl html Tags. Ich bekomme nur immer den reinen Text ohne jegliche Html Elemente, die in diesem Abschnitt beinhaltet sind.
Bisher bekam ich den selektierten Text so:
Code :1 2 3 4 5 6 7 8 9 10
this.getSelection = function() { var win = this.frame; var doc = this.frame.document; if (win.getSelection) { return win.getSelection().toString(); } else if (doc.selection && doc.selection.createRange) { return doc.selection.createRange().text; } };
Der liefert mir aber nur den reinen Text wieder. Kann jmd helfen?
Gruß
-
Moin,
im IE geht das recht einfach über die Eigenschaft htmlText des Textrange-Objektes.
In anderen Browsern ist das etwas umständlicher.
Dort kannst du bspw. den Inhalt des TextRange in einen anderen Knoten kopieren, und dann das innerHTML dieses Knotens auslesen:Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/** * function getSelectedHtml * @param object win window-Object * @return string HTML-Source der Selektion **/ function getSelectedHtml(win) { if(document.all && !window.opera) { var r=win.document.selection.createRange().htmlText; } else { try { var n=win.document.createElement('div'); n.appendChild(win.getSelection().getRangeAt(0).cloneContents()); r=n.innerHTML; delete n; } catch(e) { var r=''; } } return r; }
-
vielen dank für deine schnelle antwort. Es funktioniert auch nahezu perfekt, nur wenn man im IE ein Bild markiert hat, greift win.document.selection.createRange().htmlText; nicht. Weißt du zufällig, wie ich rausfinden kann, ob ein objekt markiert ist?
gruß
Thorsten
-
Da wird lt. Recherchen ein anderer Range-Typ namens "Control" erzeugt, dieser besitzt keine Eigenschaft htmlText.
Dafür besitzt er aber eine Collection mit allen beinhalteten Elementen
Das nötige Update für den IE-Zweig:
Code :1 2 3 4 5 6 7 8 9
if(document.all && !window.opera) { var rng=win.document.selection.createRange(); var r = rng.htmlText; if(typeof r=='undefined') { r=rng.item(0).outerHTML } }
Ähnliche Themen
-
iFrame Text auslesen (ohne HTML-Tags, reiner Text... wysiwyg)
Von Fabian Frank im Forum Javascript & AjaxAntworten: 6Letzter Beitrag: 06.06.10, 03:35 -
HTML -> Text (formatiert, aber ohne Tags)
Von brauch_mehr_schlaf im Forum PHPAntworten: 22Letzter Beitrag: 19.09.05, 09:00 -
Text wird abgeschnitten in einem Selektierten Treeviewnode
Von mage im Forum .NET ArchivAntworten: 1Letzter Beitrag: 22.03.05, 09:21 -
HTML - Tags als Text
Von flasherMX im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 05.07.04, 10:47 -
HTML-tags als TEXT oder BINARY speichern?
Von dave im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 23.10.01, 08:28





Zitieren
Login




