Mover el símbolo de intercalación al final de un contenido Editable en Chromium

Estoy enfrentando un problema molesto. Estoy trabajando en un poco de RTE y ahora estoy tratando de mover el símbolo de intercalación al final de un elemento.

En este momento, aquí está el código que tengo (de esta publicación Cómo mover el cursor al final de la entidad contentable):

Tengo algunas funciones personalizadas para trabajar en el rango y la ventana. Estoy casi seguro de que son correctos.

function(contentEditableElement){
    var contentEditableElement = this.getFocusedElement().parentNode;
    if(this.contentDoc.createRange)//Firefox, Chrome, Opera, Safari, IE 9+
{
    range = this.contentDoc.createRange();//Create a range (a range is a like the selection but invisible)
    range.selectNodeContents(contentEditableElement);//Select the entire contents of the element with the range
    range.collapse(false);//collapse the range to the end point. false means collapse to end rather than the start
    selection = this.win.getSelection();//get the selection object (allows you to change selection)
    selection.removeAllRanges();//remove any selections already made
    selection.addRange(range);//make the range you have just created the visible selection
 }
else if(this.doc.selection)//IE 8 and lower
{ 
    range = document.body.createTextRange();//Create a range (a range is a like the selection but invisible)
    range.moveToElementText(contentEditableElement);//Select the entire contents of the element with the range
    range.collapse(false);//collapse the range to the end point. false means collapse to end rather than the start
    range.select();//Select the range (make it the visible selection
}
}

Funciona muy bien en FF y Opera... pero en Chromium, el signo de intercalación simplemente no se mueve.

¿Puedes ayudarme a encontrar el camino correcto? Gracias

preguntado el 12 de junio de 12 a las 17:06

Funciona para mí (Cromo 19). Ver este JSFiddle: jsfiddle.net/pTGLy Sé que tienes un iframe pero debería comportarse igual. -

Está funcionando muy bien en JSFiddle, pero no con IFrame. Leí en alguna parte que había un error con WebKit, y la gente dio alguna solución. En mi Iframe, si agrego algunos caracteres al final del elemento ( como ESTO ) entonces puedo establecer el signo de intercalación al final de . Si está vacío, entonces no puedo. Parece que voy a tener que hacer algún tipo de almacenamiento en búfer. -

Sí, si está vacío, no funciona. Eso es un error. Incluso pensé que no era específico de WebKit. -

0 Respuestas

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.