Проверка правописания Django TinyMCE не работает должным образом в Chrome, Safari
Я использую редактор TinyMCE для моих форм в моем приложении Django. Но плагин проверки орфографии не будет работать должным образом в Chrome (версия 21.0.1180.79) и Safari (версия 5.1.7), но отлично работает в Firefox. "Не работает должным образом" в данном случае означает, что проверка орфографии работает не так, как следует, по сравнению с полнофункциональным примером tinymce http://fiddle.tinymce.com/baaaab. Я использую django-tinymce v1.5.1b2, и версия tinymce в моем /static/js/tiny_mce 3.5.6 (основана на tiny_mce_src.js)
При использовании Chrome/Safari слова с ошибками, которые были набраны ПЕРЕД нажатием кнопки "проверка орфографии", не выделяются красным (я должен щелкнуть эти слова, чтобы они были подчеркнуты красным). При отключении функции проверки правописания (повторное нажатие на кнопку) красное подчеркивание в словах с орфографическими ошибками не удаляется автоматически (опять же, я должен нажать на слова, чтобы красные подчеркивания погасли).
Функция проверки орфографии прекрасно работает в Firefox, как и в полнофункциональном примере. Я думаю, что это проблема JavaScript, но я не видел ошибок при отладке через браузеры. Любая помощь будет принята с благодарностью!
Изменить: это мой initince код TIMIMCE:
tinyMCE.init({
mode : "textareas",
theme : "advanced",
width: "565",
height: "150",
plugins : 'table,spellchecker,paste,searchreplace,autoresize',
theme_advanced_buttons1 : "bold,italic,underline,|,justifyleft,justifycenter,justifyright,|,outdent,indent,|,bullist,numlist,blockquote,|,formatselect,|,undo,redo,|,spellchecker,|,pastetext,pasteword,removeformat",
theme_advanced_buttons2: "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align: "center",
theme_advanced_statusbar_location: "bottom",
theme_advanced_resizing: "true",
theme_advanced_resizing_min_width: "565",
theme_advanced_resizing_min_height: "150",
theme_advanced_resizing_max_width: "565",
theme_advanced_blockformats: "p,h2,h3,h4,h5,h6,blockquote",
});
1 ответ
У меня была похожая проблема с мезонином, то есть CMS Django, которая использует django-grappelli (реализует tinyMCE). Я думаю, что это решение может быть применено и к вашему делу.
Я решил поместить эти две строки в метод инициализации tinyMCE_setup.js
файл:
tinyMCE.init({
// ...
gecko_spellcheck : true,
browser_spellcheck : true,
// ...
});
Для этого используется проверка орфографии в браузере (по умолчанию отключена). Первая строка активирует его для Chrome и Firefox, вторая заставляет его работать и для Safari.