Альтернативы execCommand - PullRequest
       7

Альтернативы execCommand

2 голосов
/ 10 сентября 2010

Я хочу создать редактор WYSIWYG, используя jQuery в качестве основы, из которой я могу использовать различные методы для облегчения производства.

У меня действительно есть рабочий редактор, и он работает хорошо. Я использую iFrame, и включаю его designMode и иду оттуда. Однако есть несколько вещей, которые меня мучают.

Взять в качестве примера изменение семейства шрифтов выделенного текста. На данный момент я использую это:

editorDoc.execCommand('fontname', false, 'verdana');

… теперь все работает нормально: в iFrame корректно отображаются изменения. Однако, когда я на самом деле смотрю на код (я копирую любой код внутри iFrame в скрытый ввод и затем отправляю его POST), он выдает

<font class="Apple-style-span" face="verdana">aasdf</font>

Я понимаю, что первый класс Apple-style-span - это веб-набор, который не имеет значения. То, что меня мучает, - это целое использование <font>.

Изучая execCommand, похоже, что он не является стандартным, хотя большинство браузеров его поддерживают. Однако он устарел , поэтому мне было интересно, слышал ли кто-нибудь о лучшем методе создания такого же эффекта, который, как мы надеемся, с более семантическим кодом, можно узнать. Также было бы здорово не ограничиваться iFrame, а иметь возможность использовать <textarea> вместо этого.

Большое спасибо заранее, Gareth

Редактировать: Может ли contentEditable помочь мне с моей целью не использовать iFrame?

1 Ответ

1 голос
/ 10 сентября 2010

Вы можете делать любые манипуляции с DOM iframe, используя обычные методы DOM. Посмотрите в источниках TinyMCE, если вам нужны некоторые идеи.

...