Положение курсора в WYSIWYG

kruglov

Новичок
а зачем?

В редакторе логика другая: нужно получать объект selection, у которого можно уже и текст читать, и команды применять и прочая.

А просто x и y нафиг не нужны.
 

Bakti9rov

!*|=?
kruglov

Я кстати видел ваш пример с перехватом события keyPress на том же Искпойнт - для iframe с включенным designMode.

С textarea, как я понял, проще. Но я использую iframe. :(
 

Bakti9rov

!*|=?
Задача у меня стоит такая же, как в ссылке, приведенной в начале.

В WYSIWYG перехатывается введенный символ, записывается в буфер. Текст должен парситься и заново записываться в окно ввода, при этом каретка должна остаться на прежнем месте.
 

dark-demon

d(^-^)b
http://darkodemon.blogspot.com/2007/09/blog-post_07.html
правда я с тех пор переписал с использованием спанов с айдишниками вместо вставки символов - соответственно поиск с помощью getElementById.

вообще у меня получилась такая схема:
- вставляем в DOM наши спаны
- сериализуем в строку
- сносим тэги подсветки синтаксиса
- засекаем позицию спанов в тексте
- сносим спаны
- парсим текст и вставляем тэги подсветки
- пробегаем по тексту отсчитывая символы текста и в нужном месте вставляем спаны
- парсим обратно в DOM
- находим спаны
- переносим к ним выделение
- сносим спаны

правда там много нюансов... в особенности с оперой... :(
 

Bakti9rov

!*|=?
dark-demon
да, верно. Динамическая подсветка кода наподобие ChiliHighlighter / phpclasses.org
 

Bakti9rov

!*|=?
dark-demon
у меня уже готов парсер, и реализован нединамический редактор (т.е. подсветка инициируется через нажатие кнопки). А вот идея с сериализацией-десериализацией и спанами -- очень полезная, спасибо! :)
 
Сверху