4

如何从选择中更改更改事件的 Ace 编辑器中的主题?我能够以编程方式在 dom 就绪事件上设置主题。我正在调用的代码(对于两个事件)如下所示,并且我正在传递诸如(“ace/theme/clouds”/“ace/theme/clouds_midnight”)之类的值。

setThemeValue = function(themeVal){
var editor = ace.edit("editor");
editor.setTheme(themeVal);
editor.getSession().setMode("ace/mode/javascript");
};
4

1 回答 1

13

setTheme ” 更改您即时使用的主题,您无需重做 ace.edit("editor")。

所以我建议改为这样的代码:

// Initialize your Ace Editor
var editor = (function() {
    var aceEditor = ace.edit("editor");
    // default theme
    aceEditor.setTheme("ace/theme/clouds");
    aceEditor.getSession().setMode("ace/mode/javascript");
    return aceEditor;
})();

// Change theme on the fly
editor.setTheme("ace/theme/clouds_midnight");
于 2012-09-28T07:40:30.547 回答