Email-es szerkesztő.
Sziasztok!
Tudom, kicsit félrevezető a cím, de nem jutott jobb eszembe.
A kérdés az, hogy hogyan oldják meg az e-mail szolgáltatók (freemail, gmail), hogy a 'textarea' mezőbe beírt szöveget formázni tudom és a szövegben nem látszik a formázás?
Nagyon kíváncsi lennék rá, mert szeretnék én is készíteni egy ilyet!
Remélem tudtok setgíteni és előre is köszönöm.
■ Tudom, kicsit félrevezető a cím, de nem jutott jobb eszembe.
A kérdés az, hogy hogyan oldják meg az e-mail szolgáltatók (freemail, gmail), hogy a 'textarea' mezőbe beírt szöveget formázni tudom és a szövegben nem látszik a formázás?
Nagyon kíváncsi lennék rá, mert szeretnék én is készíteni egy ilyet!
Remélem tudtok setgíteni és előre is köszönöm.
javascript wysiwyg editor
Találtam eggyet.
Valójában csak a működési elvre vagyok kíváncsi, szeretnék egy sajátot írni. Persze nem biztos, hogy ilyen elven fog majd működni, vagy megírom egyáltalán.
Update: Az alkalmazás neve TinyMCE és innen töltöttem le.
Akadnak gondok.
A megértett részekből és a FireBug által mutatott HTML forrásból annyira már rájöttem, hogy egy rejtett 'textarea' mezőbe történik az írás, majd azt a JS átírja egy (általa billesztett) 'iframe' elembe, ahol már formázottan jelenik meg. Eddig (amikor próbáltam kitalálni egy ilyen program működését) már magamtól is eljutottam korábban, habár nem értem, hogy miért 'iframe' elemet használ egy sima 'div' helyett (én ezt tettem volna).
Két kérdésem volna:
Az egyik, hogy van-e valami előnye az 'iframe'-nek egy sima 'div'-vel szemben, vagy csak így jobban tetszhetett a programozó(k)nak?
A másik (fontosabb, amire nem tudtam rájönni), hogy ha a felhasználó az 'iframe'-ben lévő szöveget látja, akkor csak azt tudja kijelölni => honnan tudja a JS, hogy mettől meddig jelölte ki a szöveget, ha nem a 'textarea'-ban teszi ezt?
Találtam egy 'onselectstart' eseménykezelőt, de az (úgy tudom) csak IE alatt működik. Azt tudom (a textarea++ című írásból), hogy 'textarea'-ban hogyan működne ez a dolog, de erre ötletem sincs.
Tudja valaki, hogy hogyan kell ezt megcsinálni?