php – CodeMirror有内容,但不会显示,直到按键

我正在构建一个嵌入在我的webapp中的CodeMirror实例.它的效果非常好 – 除了在用户输入新字符之前初始内容不会显示.所以它是所有的,但隐藏,直到用户强制更改.这不好.有什么办法可以强制重绘或刷新模拟一个字符进入的空间的浏览器.

这是代码

<textarea id='code-mirror' ><?PHP echo $contents; ?></textarea>
<script>
    jQuery(document).ready(function(){
        var textarea = document.getElementById('code-mirror');
        var myCodeMirror = CodeMirror.fromTextArea(textarea,{  
            onUpdate:codemirrorcallback,});
        // myCodeMirror.refresh(); ? is this an option?
     });
</script>

这个工作编辑器可以保存内容并在文本区域内显示保存的内容,但只有在用户开始编辑之后才会显示.在此之前它只是空白.

任何帮助,即使只是链接将高度赞赏.多谢你们!

UPDATE

在myCodeMirror上调用.refresh将在未调用TypeError的Chrome控制台中打印错误:无法调用未定义的方法“focus”

如果发生这种情况,您确实需要在您的CodeMirror实例上调用refresh().但是由于太空猴子,您需要在刷新呼叫中包含超时时间:
var editor = CodeMirror.fromTextArea( yourSourceDOM,{ lineNumbers:true })
setTimeout( editor.refresh,0 )

这不漂亮,但是解决了它.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...