CodeMirror的代码差异比较着色MarkText

let arrLines = []
 var editor= CodeMirror.fromTextArea(document.getElementById("editor")
 editor.on('inputRead',function(e) {
     
            arrLines .push(e.doc.getCursor())
      })

   for(let i = 0 ;i < arrLines .length; i++) {
     
    let line = arrLines[i].line
    let ch = arrLines [i].ch
     editorNew.markText({
     'line':line - 1, 'ch': ch - 1}, {
     'line': line, 'ch': ch+1}, {
     className: "noSameHighlight"})
   }

以上就是代码差异着色。 弄了好久,网上无文档

下面学一学CodeMirror的事件

编译器的事件触发器 常用

  • change
this.CodeMirrorEditor.on("change",function(){
     
//事件触发后执行事件
alert("change")
});
  • “inputRead”:当用户输入或粘贴时编辑器时触发。
  • this.CodeMirrorEditor.getValue():获取编辑器内容
  var editor = CodeMirror.fromTextArea(document.getElementById("editor")
  editor.getValue()
  • this.CodeMirrorEditor.setValue():设置编辑器内容
  var editor = CodeMirror.fromTextArea(document.getElementById("editor")
  editor.setValue()
  • 获取每次改变的位置
 editor.on('inputRead',function(e) {
     
    arrLines .push(e.doc.getCursor())
})

想看更多的可以打开CodeMirror的官方文档:https://codemirror.net/

你可能感兴趣的:(Js,javascript,codemirror,jquery)