Ответ 1
Использовать метод обновления после создания экземпляра CodeMirror... editor.refresh() Это случилось со мной при попытке вставить редактор в dijit.Dialog, когда я еще был скрыт. Это помогло.
CodeMirror, похоже, работает очень хорошо, за исключением случаев, когда у меня есть только несколько (3 или менее) строк кода в текстовом поле. Когда это произойдет, текстовое поле пусто, пока я (A) не попал в текстовое поле или (B) не сделал что-то, что заставляет браузер перерисовывать (например, изменение размера). При наличии более трех строк они отображаются только при первом отображении страницы.
Я ничего не делаю здесь:
var editor = CodeMirror.fromTextArea(document.getElementById('html'), {
mode: 'text/html',
tabMode: 'indent',
lineNumbers: true
});
Просто интересно, есть ли у кого-нибудь еще эта проблема.
Использовать метод обновления после создания экземпляра CodeMirror... editor.refresh() Это случилось со мной при попытке вставить редактор в dijit.Dialog, когда я еще был скрыт. Это помогло.
Я настраиваю сценарий, который не имел проблемы в Chrome, используя от 0 до 2 строк кода несколькими разными способами.
Я напрямую связан с codemirror для включений.
У вас есть последняя версия?
С какой средой вы сталкиваетесь?
Возможно, это проблема с браузером?
<link rel="stylesheet" href="#" onclick="location.href='http://codemirror.net/lib/codemirror.css'; return false;">
<script src="http://codemirror.net/lib/codemirror.js"></script>
<script src="http://codemirror.net/addon/fold/foldcode.js"></script>
<script src="http://codemirror.net/addon/fold/foldgutter.js"></script>
<script src="http://codemirror.net/addon/fold/brace-fold.js"></script>
<script src="http://codemirror.net/addon/fold/xml-fold.js"></script>
<script src="http://codemirror.net/mode/javascript/javascript.js"></script>
<script src="http://codemirror.net/mode/xml/xml.js"></script>
<textarea id='someID1'></textarea>
<textarea id='someID2'>
<table><tr><td>The wheels on the bus go round and round.</td></tr>
</table>
</textarea>
<script>
var editor = CodeMirror.fromTextArea(document.getElementById('someID1'), {
mode: 'text/html',
tabMode: 'indent',
lineNumbers: true
});
CodeMirror.fromTextArea(document.getElementById('someID2'), {
mode: 'text/html',
tabMode: 'indent',
lineNumbers: true
});
</script>