Tengo una función que obtiene el texto seleccionado, el texto se selecciona con el mouse y lo agrega a una variable. Quiero agregar etiquetas alrededor de esa variable en el texto seleccionado, en ese párrafo.jQuery seleccione texto y añádalo en un párrafo
$("p").live("mouseup",function() {
selection = getSelectedText();
if(selection.length >= 3) {
var $spn = $("<span></span>").html(selection).addClass("selected");
$("p").wrap($spn);
}
});
//Grab selected text
function getSelectedText(){
if(window.getSelection){
return window.getSelection().toString();
}
else if(document.getSelection){
return document.getSelection();
}
else if(document.selection){
return document.selection.createRange().text;
}
}
puedo conseguir la variable de selección de texto, pero en lugar de colocar el <span></span>
alrededor del texto seleccionado a partir del párrafo <p>
, mi función envuelve esta afuera.
¿Cómo puedo reemplazarlo en el párrafo? Gracias.
En general es muy difícil hacer lo que pide. ¿Estás seguro de que no hay etiquetas anidadas debajo del párrafo? Si los hay, puede ser muy difícil hacerlo sin romper la arquitectura actual. – glmxndr
No debe haber ninguna otra etiqueta debajo del párrafo, excepto los tramos recientemente creados. – Mircea