着色动态加载的文件

时间:2010-10-29 17:51:47

标签: javascript jquery codemirror

我正在使用JQuery将文件加载到textarea和CodeMirror以对其进行着色,但似乎它们不能很好地兼容:我可以加载文件或使用textarea(使用现有文本)来获取使用一种或另一种颜色,但是当我第一次加载它然后着色它时,我最终得到一个空白的textarea。以下是my page的相关代码:

$("#corpo").load("jquery-latest.min.js"); /* random js file */

var editor = CodeMirror.fromTextArea("corpo", {
 parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
 path: "/codemirror/js/",
 stylesheet: "/codemirror/css/jscolors.css"
});

谢谢!

1 个答案:

答案 0 :(得分:1)

可能你必须将着色放入回调中:

$("#corpo").load("jquery-latest.min.js", function() {
  var editor = CodeMirror.fromTextArea("corpo", {
   parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
   path: "/codemirror/js/",
   stylesheet: "/codemirror/css/jscolors.css"
  });
});

...否则CodeMirror在获取内容之前就开始工作(jQuery中的ajax请求以异步方式执行)。