Autor Zpráva
Jan Tvrdík
Profil
mám tlačítko:
<button onclick="funkce();">tlačítko</button>

jak mám napsat funkci funkce(), aby dokázala před vybraný text vložit obrázek (nebo cokolik jiného)

Příklad, jak to má fungovat
označím si na stránce třeba slovo "hled". Kliknu na tlačítko (či jakkoliv jinak spustím funkci) a před vybraný text se vloží obrázek = vybraný text se nahradí obrázkem + vybraným textem
habendorf
Profil
createRange Method

Creates a TextRange object from the current text selection, or a controlRange collection from a control selection.

Syntax

range = selection.createRange()

Return Value

Returns the created TextRange object.

Pak už si s tím můžeš dělat co chceš.
Jan Tvrdík
Profil
habendorf
Neměl by jsi ještě nějaké přesnější tipy ať to nemusím celé studovat?
Zjistit vybraný text není problém, problémem je, jak vybraný text nahradit něčím jiným.

EDIT: Už se do toho pomalu začínám dostávat - sláva http://developer.mozilla.org/
habendorf
Profil
Jan Tvrdík

http://home.arcor.de/martin.honnen/mozillaBugs/domLevel2/test200603170 2.html

Nejede to ale v IE.
Jan Tvrdík
Profil
habendorf
Na IE kašlu, je to spíš pro moje interní potřeby (ve finále z toho bude bookmarklet)
Jan Tvrdík
Profil
habendorf
Tak jsem to konečně pořešil i po svém - krásně a elegantně:
var img = document.createElement("img");
img.setAttribute("src","img.jpg");		

var s = window.getSelection();
var r = document.createRange();
r.setStart(s.anchorNode,s.anchorOffset);
r.insertNode(img);
peta
Profil
Jan Tvrdík
google.com textarea cursor
google.com textarea kurzor site:diskuse.jakpsatweb.cz

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: