#javascript #html #tinymce
#javascript #HTML #крошечный кусочек #tinymce
Вопрос:
Я использую TinyMCE 5 в веб-приложении PHP / MySQL. Иногда текстовое поле отображается идеально, но иногда оно просто выглядит следующим образом. Обновление страницы обычно решает проблему и делает текстовое поле отображаемым нормально.
Отсутствие репутации не позволяет мне публиковать изображения, но ссылка здесь >>https://i.ibb.co/8xgF0fS/screenshot.jpg
и когда это работает должным образом >>https://i.ibb.co/nfBdZnF/Capture.jpg
По-видимому, нет рифмы или причины, по которой оно появляется или нет.
Я не использую Turbolinks, поэтому исключил эту причину. Попытался переместить скрипт в разные места на странице и удалить весь css из текстового поля.
Ссылка на TinyMCE js находится в начале страницы, непосредственно из cloud.tinymce.com
Теперь осталось с:
<script type="text/javascript">
tinymce.init({
selector: "#mytextarea",
browser_spellcheck: true,
contextmenu: false,
plugins: [
"autosave","autoresize",
"advlist autolink lists link image charmap print preview anchor",
"searchreplace visualblocks code fullscreen",
"insertdatetime media table paste"
],
autosave_interval: "10s",
autoresize_bottom_margin: 25,
max_height: 500,
toolbar: "restoredraft | forecolor backcolor | insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image"
});
</script>
<textarea name="body" id="mytextarea" required=""></textarea>
Комментарии:
1. Есть ли какая-либо ошибка в консоли devtools? Должно же что-то быть.
2. Ничего, и это то, что меня озадачивает. Я сижу с пользователем, который видит проблему, ошибок в консоли нет. Я загружаю ту же страницу, и она работает отлично, по-прежнему никаких ошибок в консоли. Я думаю, это должно быть как-то связано со временем загрузки, что tinymce.init в некоторых случаях пропускается, потому что загрузка страницы занимает больше времени. Может быть, если я размещу tinymce локально, а не использую ссылку CDN? Или мой тег скрипта находится не в том месте?
3. Взгляните сюда forums.meteor.com/t/tinymce-issues/23327
4. Спасибо, Сания, но это немного другое обстоятельство.
Ответ №1:
Если в консоли нет ошибки, то единственная причина, по которой может произойти что-то подобное, заключается в том, что ваш tinymce
сценарий инициализации предшествует объявлению textarea
. Все такие сценарии следует вызывать только тогда, когда DOM полностью готов. Убедитесь, что вы переместили скрипт до самого низа страницы, непосредственно перед закрытием </body>
тега.
Комментарии:
1. Спасибо Джаярджо, я прихожу к тому же выводу, поэтому переработал порядок кода на странице. Пока все хорошо. Ценю вашу помощь.