Я ищу, чтобы создать редактор WYSIWYG, используя jQuery в качестве рамки, из которой я могу использовать различные методы для упрощения производства.Альтернативы execCommand
У меня действительно есть рабочий редактор на данный момент, и он работает хорошо. Я использую iFrame и устанавливаю его designMode на и дальше оттуда. Однако есть несколько вещей, которые насмехаются.
В качестве примера можно привести семейство шрифтов выбранного текста. На данный момент я использую это:
editorDoc.execCommand('fontname', false, 'verdana');
... теперь работает отлично: он показывает изменение правильно в плавающем фрейме. Однако, когда я на самом деле посмотреть на коде (скопировать любой код внутри плавающего фрейма в скрытый вход, а затем POST его) она производит
<font class="Apple-style-span" face="verdana">aasdf</font>
Я понимаю, что первый класс Apple-стиль-диапазон является WebKit вещь, которая не имеет значения. Вещь, которая насмехается, - это использование <font>
.
Исследуя execCommand, похоже, что это не стандарт, хотя большинство браузеров поддерживают его. Это is старый, хотя мне было интересно, слышал ли кто-нибудь или знал о более эффективном методе создания такого же эффекта, надеясь, что это более семантический код продукта. Также было бы фантастическое не ограничиваться плавающим фреймом, но, чтобы иметь возможность использовать <textarea>
вместо ..
Большого спасибо заранее, Гарет
Edit: Может contentEditable помочь мне с моей целью не использовать iFrame?
Да, contentEditable может вам помочь. Но вы должны исследовать проблемы совместимости с ним. Также учтите, что CSS-документ, содержащий редактор, будет применяться к содержимому редактора, если вы не используете iframe. – thorn