Foros del Web » Programando para Internet » Javascript »

Seleccionar Texto desde Javascript

Estas en el tema de Seleccionar Texto desde Javascript en el foro de Javascript en Foros del Web. Hola, sabeis como puedo establecer el texto que debe salir seleccionado desde javascript. El texto esta en una capa no en un input type="text" Gracias....
  #1 (permalink)  
Antiguo 20/11/2008, 03:27
 
Fecha de Ingreso: febrero-2008
Mensajes: 17
Antigüedad: 16 años, 9 meses
Puntos: 1
Seleccionar Texto desde Javascript

Hola,

sabeis como puedo establecer el texto que debe salir seleccionado desde javascript. El texto esta en una capa no en un input type="text"

Gracias.
  #2 (permalink)  
Antiguo 20/11/2008, 04:56
Avatar de Shagraarath  
Fecha de Ingreso: agosto-2008
Mensajes: 151
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Seleccionar Texto desde Javascript

Seria mas facil que te pudieran ayudar si pusieras un ejemplo de lo que quieres hacer ^^
  #3 (permalink)  
Antiguo 20/11/2008, 05:34
 
Fecha de Ingreso: febrero-2008
Mensajes: 17
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Seleccionar Texto desde Javascript

Imaginaos la siguiente capa:

<div id="contenedora">
bla bla hola bla bla bla bla hola bla bla bla hola
</div>


quiero una funcion javascript que seleccione(como cuando seleccionamos con el raton sobre la pantalla) la palabra que recibe como parametro. Por ejemplo si recibe la cadena "hola" tiene que ir a la capa anterior buscarla y seleccionarla.

Si la palabra a resaltar estuviera dentro de una caja de texto seria muy facil haciendo uso del metodo setSelectionRange, pero al estar en una capa estoy perdido, ya que el metodo no funciona
  #4 (permalink)  
Antiguo 20/07/2011, 18:00
 
Fecha de Ingreso: septiembre-2007
Mensajes: 7
Antigüedad: 17 años, 2 meses
Puntos: 1
Exclamación Respuesta: Seleccionar Texto desde Javascript

Mira en http://www.forosdelweb.com/f13/selecionar-798195


Código:
<script type="text/javascript"> 
function seleccionar(obj){
	if(obj.nodeName.toLowerCase()=='textarea' || (obj.nodeName.toLowerCase()=='input' && obj.type=='text')){
		obj.select();
		return;
	}
	if (window.getSelection) { 
        var sel = window.getSelection();
        var range = document.createRange();
        range.selectNodeContents(obj);
        sel.removeAllRanges();
        sel.addRange(range);
    } 
	else if (document.selection) { 
    	document.selection.empty();
    	var range = document.body.createTextRange();
		range.moveToElementText(obj);
		range.select();
    }
}
</script>

<div onclick="seleccionar(this)">Este  es un texto contenido en una capa</div>
Antes de preguntar ... busca un poco

Última edición por aika; 20/07/2011 a las 18:06
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:36.