2014-06-19 68 views
2

我有幾個ace.js編輯器在一個頁面上。它們存儲在一個數組中。Ace.js .on事件

如何確定我輸入文本的編輯器?

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/

在此先感謝。

回答

2

你想要的元素?還是編輯器的一個實例?無論如何,你應該在被調用函數的第二個參數中找到你需要的。

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

非常感謝! – owl