codemirror 在单行上呈现代码

Yus*_*liq 5 javascript jquery internet-explorer codemirror

http://fiddle.jshell.net/tLth8/6/show/

在 IE <9 中,代码被突出显示,但新行被忽略,代码都在一行上,如下所示 代码如何在 ie<9 中呈现

我怎样才能像下面的源代码一样正确地呈现线条

代码应该如何呈现,(谷歌浏览器)

我试过改变 css 所以线条是display:block;但是没有区别

我试过的

.CodeMirror pre {
    display:block;
}
.CodeMirror-lines div{
    display:block;
}
Run Code Online (Sandbox Code Playgroud)

jQuery 源码:

$("span.code, div.code").each(function () {

    var $this = $(this),
        isdiv = $this.is("div"),
        $code = (isdiv) ? $this.html().replace(/^(\r\n)|(\n)/, ''):$this.html(),
        $unescaped = (isdiv) ? $('<div/>').html($code).text() : $('<span/>').html($code).text();

    $this.empty();
    if (isdiv) {
        $this.css({
            "display": "block"
        });
        $this.after('<div class="clear"/>');
    }

    var editor = CodeMirror(this, {
        value: $unescaped,
        mode: (isdiv) ? "text/html" : "javascript",
        lineNumbers: (isdiv) ? true : false,
        readOnly: false
    });
    if (isdiv) {
        var linecount = editor.lineCount();
        for (j = 0; j < linecount; j++) {
            editor.indentLine(j);

        }
    }
});
Run Code Online (Sandbox Code Playgroud)

gki*_*ely 1

我一直使用文本区域标签来初始化代码镜像。这就是在主站点上完成的方式。

刚刚测试了一下,可以在 ie8、ie9 下运行。

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
             mode: 'htmlmixed', 
             tabMode: "indent"
});
Run Code Online (Sandbox Code Playgroud)