我在一个页面上有一些 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/
提前致谢。
答案 0 :(得分:2)
你想要元素吗?还是编辑器的一个实例?无论如何,你应该在被调用函数的第二个参数中找到你需要的东西。
editor[i].on('input', function(e, target) {
console.log(target);
});