Ace Editor - 如何找到一个或所有实例?

Ace Editor - How to find one or all instances?

我尝试在随机网站上获取和设置 ace 编辑器的值。但我不知道实例名称。此外,任何 div 上都没有 ID。 有没有办法找到一个或所有实例,以便我可以访问 api,如:

var editor = ace.edit("...");

感谢您的建议:)

所有 ace 编辑器都需要有 ace_editor 类名并且 ace.edit 将编辑器保存到 <domNode>.env.editor 因此以下内容在大多数情况下应该有效

var all = document.querySelectorAll(".ace_editor");
for (var i = 0; i < all.length; i++) {
    if (all[i].env && all[i].env.editor)
        console.log(all[i].env.editor)
    else
        console.log("can't get editor from" all[i])
}

这不适用于创建为 new Editor() 且没有 env 的编辑器以及创建于影子 dom 的编辑器,后者无法通过 querySelectorAll 找到。