Мне нужно создать редактор wysiwyg для проекта, над которым я работаю, и мне нужны некоторые рекомендации. Вот некоторые из моих ключевых моментов, вызывающих путаницу:
документы iframe или контентные div : какой из них мне следует использовать и почему? Я ненавижу фреймы, есть ли явное преимущество в использовании фреймов?
кроссбраузерный стиль : execCommand, кажется, применяет разные стили в разных браузерах. Есть ли какие-нибудь уловки, чтобы сделать эту кроссбраузерную совместимость? Следует ли мне вообще не использовать execCommand и вместо этого применять свои собственные стили?.
добавление элементов в цепочку отмены : как можно запустить собственный сценарий, например, вставить изображение, и разрешить cntrl + z (отменить) для убери это? Есть ли массив элементов отмены / повтора для contenteditable, в который я могу вставлять элементы?
сохранение выделения текста : как я могу поддерживать выделение текста при выполнении таких операций, как выбор стиля шрифта, где будет оставлен фокус и удалите мой выбор. Рэнджи ? Закрытие Google ? Есть ли другие библиотеки диапазона / выбора, на которые стоит обратить внимание?
Мы будем очень благодарны за любые советы по этим элементам или что-либо еще, связанное с созданием редактора форматированного текста! Есть ли такой зверь в Python?