Autor Zpráva
teapack
Profil
Zdravím,
existuje v JS funkce, která vrátí označený text (třeba z iframu)?
mám na mysli něco takového:

ifram = document.getElementById('editor');
alert(ifram.contentWindow.document.body.markedArea);


hodí to sice alert, ale s textem "undefined".
Joker
Profil
Pokud by to byla textarea, tak normální prohlížeče mají vlastnosti selectionStart a selectionEnd, určující pozici začátku a konce označení.

V Internet Exploreru se to dělá takovým podle mě zvláštním způsobem přes objekt selection a metodu createRange():
document.selection.createRange().text
To jde použít pro jakýkoliv označený text na stránce (nejen textarea). Tenhle způsob funguje i v Opeře, která objekt selection taky umí (a současně u textarea umí i selectionStart a selectionEnd). Ale nefunguje ve Firefoxu.
peta
Profil
http://www.volny.cz/peter.mlich/www.htm#mssub12
textarea
teapack
Profil
Bohužel potřebuji vrátit označený text z iframu, ne z textarea. A ještě ke všemu ve FF.
Kudla
Profil *
if (navigator.appName == "Netscape")
objekt = editor.contentWindow.window.getSelection(); // FF
else
objekt = editor.contentWindow.document.selection.createRange();

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: