Ace.js.on事件

时间:2014-06-19 15:00:35

标签: javascript ace-editor

我在一个页面上有一些 ace.js 编辑器。它们存储在一个数组中。

如何确定我输入文字的编辑器?

var editor = {first: ace.edit("editor"), second: ace.edit("editor1"), third: ace.edit("editor2")};

for(var i in editor) {
    editor[i].getSession().setMode("ace/mode/javascript");
    editor[i].on('input', function() {
        console.log(this); // How to get current editor? this returns [function()]
    });
}

jsfiddle:http://jsfiddle.net/3nHas/25/

提前致谢。

1 个答案:

答案 0 :(得分:2)

你想要元素吗?还是编辑器的一个实例?无论如何,你应该在被调用函数的第二个参数中找到你需要的东西。

editor[i].on('input', function(e, target) {
    console.log(target);
});