首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >CodeMirror 2-仅突出显示(无编辑器)

CodeMirror 2-仅突出显示(无编辑器)
EN

Stack Overflow用户
提问于 2011-04-02 12:24:04
回答 6查看 20.8K关注 0票数 58

是否可以使用CodeMirror 2突出显示DIVPRE标记中的代码(不使用编辑器)?

就像CodeMirror 1过去可以使用hightlightText()函数一样吗?例如:http://codemirror.net/1/highlight.html,在您按下run highlight (下面突出显示的文本)之后

此外,它还可以突出显示来自内联元素的代码,如<code>,并保持结果的内联,就像谷歌的Prettify所做的那样吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-04-09 21:40:02

一种更好、更简单的解决方案是将CodeMirror实例的readOnly属性设置为true,如下所示:

代码语言:javascript
复制
$('.code').each(function() {

    var $this = $(this),
        $code = $this.html();

    $this.empty();

    var myCodeMirror = CodeMirror(this, {
        value: $code,
        mode: 'javascript',
        lineNumbers: !$this.is('.inline'),
        readOnly: true
    });

});

只需将类.code添加到包含代码的标记中,它的语法就会突出显示。我还通过使用类.inline添加了对内联代码的支持。

Example on jsfiddle

票数 57
EN

Stack Overflow用户

发布于 2011-06-16 04:49:04

作为一个比较晚的更新,CodeMirror 2最近获得了这一功能。请参阅http://codemirror.net/demo/runmode.html

票数 40
EN

Stack Overflow用户

发布于 2011-04-03 04:02:22

您应该使用独立的代码语法突出显示工具:SyntaxHighlighter 3运行得非常好。

如果你真的想要CodeMirror,有一个readOnly选项:

代码语言:javascript
复制
var myCodeMirror = CodeMirror(function(elt) {
    myElement.parentNode.replaceChild(myElement, elt); // myElement is your <pre> or <div>
  }, {
    value: myElement.value,
    readOnly: true
  });
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5521137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档