Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.07.2015, 11:49
Кандидат Javascript-наук
Отправить личное сообщение для zhurchik Посмотреть профиль Найти все сообщения от zhurchik
 
Регистрация: 04.06.2011
Сообщений: 116

Визуальный редактор своими руками
Всем привет.
Готовые решения не приемлю, хочу своё + опыт.

Прежде чем начать реализацию, хочу задать пару вопросов.

Реализовать редактор хочу при помощи contenteditable

Многие из вас знаю, что contenteditable ведет себя по разному в разных браузерах и даже одних и тех же браузерах, но разных версиях.
К примеру:
Переносы в хроме добавляются так <p><br></p> а в мозиле так <br> ну и разные другие особенности.

Что я хочу сделать, вот что:
Перехватывать нажатия символьных клавиш и полностью управлять вставкой символом и тегов, то-есть, отменять действия по умолчанию и полностью добавлять и удалять символы, теги и т.д.

Если подобное реализовать, будут ли тормоза при печатании или удалении символов (на средних компах)? У кого какой опыт в этом? Стоит ли вообще так делать или же это плохо?
И так ли реализованы популярные визуальные редакторы?
Ответить с цитированием
  #2 (permalink)  
Старый 20.07.2015, 14:55
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Цитата:
И так ли реализованы популярные визуальные редакторы?
Откройте пару, да посмотрите. Они почти все пользуют iframe
Ответить с цитированием
  #3 (permalink)  
Старый 21.07.2015, 08:07
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Сообщение от zhurchik
Прежде чем начать реализацию, хочу задать пару вопросов.
Готовые решения все - гавно и вы лучше не сделаете. Чтобы сделать как в Ворде - надо написать еще один веб-Ворд. Боюсь там парой вопросов не обойдется.
Ответить с цитированием
  #4 (permalink)  
Старый 21.07.2015, 09:03
Кандидат Javascript-наук
Отправить личное сообщение для zhurchik Посмотреть профиль Найти все сообщения от zhurchik
 
Регистрация: 04.06.2011
Сообщений: 116

kostyanet,
Дело в том, что мне не нужен функционал Бога. Мне хватит того, чтобы можно было задавать текст жирным, курсивом и некоторыми цветами, но то для чего я все это затеял это картинки, которые я хочу вставлять прямо в редактор и свой мини плеер на HTML5 при загрузки песен, а еще добавление смайлов и прочая мелочь.

Функционал как в Ворде ни к чему.

А готовые решения тормозные, мне это не нравится, да и хрен их под себя переделаешь там столько кода, даже залезать не хочется туда. А свое решение всегда можно доделать, переделать и т.д. и это будет гораздо приятнее, удобнее и проще!
Ответить с цитированием
  #5 (permalink)  
Старый 21.07.2015, 09:33
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

http://ckeditor.com/demo#widgets
Вот вам минимальный функционал. Можно вообще все кнопки убрать. Редактор - это очень много кода, и сложная задача. Я не думаю что у вас получится сделать что-то приличное с помощью "contenteditable".
Ответить с цитированием
  #6 (permalink)  
Старый 21.07.2015, 10:26
Кандидат Javascript-наук
Отправить личное сообщение для zhurchik Посмотреть профиль Найти все сообщения от zhurchik
 
Регистрация: 04.06.2011
Сообщений: 116

tsigel,
Я юзал и этот редактор и многие другие. Меня ни один из них не устраивает!

Почему вы считаете, что с Contenteditable не получится реализовать нормальный редактор? Разе для этого недостаточно в современном браузере инструментов?
Ответить с цитированием
  #7 (permalink)  
Старый 21.07.2015, 11:45
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Contenteditable не генерит никаких событий и никакие попытки навесить таковые не увенчаются, ибо это не научно.

Попытки конечно есть, однако возникает резонный вопрос: зачем пересаживать гипофиз человека собаке, если любая баба вам нарожает людей просто за еду?

Contenteditable вообще не для этого сделан, для чего вы хотите приспособить этот атрибут. Вот например у меня есть страница ценника товара - которая для печати на бумаге. На этой странице вообще никакого интерфейса быть не может, иначе он напечатается вместе с ней. Но бывает что цена товара в бд не актуальна, или там надо укоротить или дописать наименование или еще какие-то параметры - я делаю эти элементы contenteditable='true' и операто спокойно все правит и печатает. Без сохранения, конечно.

Кстати, надо проверить еще - в файл изменения запишутся?
Ответить с цитированием
  #8 (permalink)  
Старый 21.07.2015, 11:50
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Проверил - так и есть, сохраняет изменения на диск. Вот и ответ для чего редактируемый контент.
Ответить с цитированием
  #9 (permalink)  
Старый 21.07.2015, 12:49
Кандидат Javascript-наук
Отправить личное сообщение для zhurchik Посмотреть профиль Найти все сообщения от zhurchik
 
Регистрация: 04.06.2011
Сообщений: 116

kostyanet,
А какие вам еще события нужны? Чем вас не устраивают keypress, keydown и прочие? А управлять содержимым и т.д. можно через range и selection объекты. Что из этого вас смущает?
Ответить с цитированием
  #10 (permalink)  
Старый 22.07.2015, 06:31
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Это они вам нужны, мне-то нахрен. Вы все равно нифига не поняли и поймете только когда начнете мастырить свой лисапед. Вот и начинайте.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Визуальный редактор hoax Элементы интерфейса 0 08.01.2015 15:42
Текстовый редактор на сайт своими руками idmitry.bondar Events/DOM/Window 3 08.12.2012 13:28
wysiwyg редактор своими руками platedz Events/DOM/Window 15 06.12.2012 14:34
Визуальный редактор javascript эффектов дождя снега пузырей hyhy Элементы интерфейса 2 21.10.2010 17:12
Визуальный редактор Saveliy Элементы интерфейса 4 16.10.2008 19:01