react builds javascript jquery jquery-ui ace-editor

javascript - builds - ¿Cómo establecer el foco en el editor ace?



ace editor react (5)

Aquí hay un extracto de mi código que establece el foco en una sesión de edición de Ace en una pestaña jQuery UI:

$(''#tabs_div'').tabs( { select : function(event, ui) { var tabName = ui.panel.id; var doc = docs.get(tabName); // look up the EditSession var session = env.split.setSession(doc); session.name = tabName; env.editor.focus(); }

Estoy usando el componente de editor ace de ajax.org dentro de una interfaz de pestaña jquery. Cada pestaña contendrá un editor ace por separado. Cada vez que cambio a una nueva pestaña, el editor no se enfocará.

Puedo detectar cuándo se selecciona una pestaña vinculando al evento "tabsshow" de jquery UI. ¿Alguien sabe cómo establecer el foco en el editor si dice que el ID de mi editor div es editor-pestaña-0 para la primera pestaña, y así sucesivamente ...?

Por favor, ¿alguien puede ayudar?


Buena solución, pero quería ir al final de la última línea, no al comienzo de la última línea.

//To focus the ace editor editor.focus(); session = editor.getSession(); //Get the number of lines count = session.getLength(); //Go to end of the last line editor.gotoLine(count, session.getLine(count-1).length);


Para enfocarse al final:

editor.focus(); editor.navigateFileEnd();

Gracias a @ a-usuario


Utilizo JQuery con el Ace Editor, y encontré el siguiente código funcionó muy bien para mí. PD: La ventana de mi editor de código está en un marco flotante:

$(''#modelFrame'').mouseover(function() { try { $(this).get(0).contentWindow.editor.focus(); } catch (doNothing) { ;; } });


editor.focus(); //To focus the ace editor var n = editor.getSession().getValue().split("/n").length; // To count total no. of lines editor.gotoLine(n); //Go to end of document