editor.getSelectionElement()
Devuelve el elemento que contiene la selección actual. Según lo que esté seleccionado, es el control seleccionado, la celda de tabla en la que está el cursor o el elemento que rodea un rango resaltado. Úsalo para responder a “¿dónde está ahora el usuario?”, por ejemplo para activar los controles de tabla solo dentro de una celda.
Sintaxis
editor.getSelectionElement()
Parámetros
Ninguno.
Valor devuelto
El elemento contenedor, o null cuando la selección no tiene un único contenedor significativo (por ejemplo, una selección vacía sin ancla).
Notas de comportamiento
- Un control seleccionado tiene prioridad. Si hay un control seleccionado (como una imagen), se devuelve directamente: el mismo elemento que obtendrías con getSelectedControl().
- Un cursor en una celda de tabla devuelve esa celda. Cuando la selección está contraída dentro de un
TDo unTH, se devuelve esa celda, algo práctico para activar acciones que dependen de la celda. - Un rango devuelve su elemento contenedor. Para un rango resaltado,
getSelectionElement()sube hasta el elemento que contiene los dos extremos de la selección.
Ejemplo de uso
Averigua si el cursor está dentro de una celda de tabla:
var editor1 = new RichTextEditor("#div_editor1");
var el = editor1.getSelectionElement();
var inCell = el && (el.closest("td") || el.closest("th"));Lee el enlace más cercano a la selección actual:
var el = editor1.getSelectionElement();
var link = el ? el.closest("a[href]") : null;
if (link) console.log("Editing link:", link.href);Relacionado
- editor.getSelectedControl() — solo el control seleccionado, o null.
- editor.getSelectedText() — el texto sin formato de la selección.
- editor.getSelection() — el objeto de selección subyacente.