Estoy trabajando en un editor de texto enriquecido como aplicación web, básicamente un editor XML escrito en javascript.Use javascript para ampliar un Rango DOM para cubrir nodos parcialmente seleccionados
Mi código de JavaScript debe envolver una selección de nodos desde el contenedor contentEditable div. Estoy usando los métodos descritos en MDC. Pero ya que necesito para sincronizar los contenedores div de contenido a XML DOM me gustaría evitar selecciones parciales como se describe en w3c ranges:
<BODY><H1>Title</H1><P>Blah xyz.</P></BODY
............^----------------^............
Esta selección se inicia dentro de H1 y termina en el interior P, Me gustaría que incluya H1, P por completo.
¿Existe alguna manera fácil de ampliar por completo la selección para cubrir por completo a niños parcialmente seleccionados? Básicamente quiero usar range.surroundContents() sin ejecutar una excepción.
(El código no tiene que trabajar con la ópera/IE)
De hecho, pero creo que esta es la ruta correcta. Trataré de crear una selección personalizada del original que tenga estas propiedades. –
Extenderé mi pregunta para que quede más clara. También actualicé el ejemplo en http://jsfiddle.net/GFuX6/5/ –
Seleccione un texto, presione escape y el texto se convierte en negrita. Hay una larga línea en el violín: 'window.getSelection(). GetRangeAt (0) .surroundContents (tag);' El violín actual amplía los límites de los nodos de texto, pero no puedo encontrar una manera de cubrir parcialmente nodos incluidos –