我有一个div
来实例化一个ace编辑器对象。
我正在尝试从drag and drop
HTML draggable
ui-ace div droppable
中添加一些文字。
我已经制作了<div id="id1" ui-ace droppable=true ondrop="handleDrop(event,this)"></div>
,并希望从drop的事件目标中获取编辑器的当前实例。
我怎样才能完成这个?
HTML
function handleDrop(e,obj){
// need code to get current editor instance from obj without using ace.edit(obj.id)
// because ace.edit(obj.id) will reset the content I believe. Please correct me if I am
//wrong. Ace api says it will insert editor in the DOM. http://ace.c9.io/#nav=api&api=ace
}
JS功能
{{1}}
请帮忙。
答案 0 :(得分:21)
我不知道为什么API文档中没有提到这一点,但是如果你在已经实例化的编辑器上调用ace.edit
,你将获得该实例。它不会重置该编辑器。我测试了它。
在您的情况下,可以通过以下代码完成:
function handleDrop(e,obj)
{
var editor = ace.edit(obj.id);
// Do something with editor
}
我知道你提出这个问题已经有一段时间了,但我找不到关于这个主题的任何内容,所以我想我应该分享一下。