Foros del Web » Programando para Internet » Javascript »

detectar "textarea" activo

Estas en el tema de detectar "textarea" activo en el foro de Javascript en Foros del Web. Hola amig@s, Tengo una función en javascript que pone en un textArea un texto al pulsar un botón, pero lo que quiero hacer ahora es ...
  #1 (permalink)  
Antiguo 28/10/2004, 08:15
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
detectar "textarea" activo

Hola amig@s,

Tengo una función en javascript que pone en un textArea un texto al pulsar un botón, pero lo que quiero hacer ahora es que si hay varios textArea que lo haga en el que esté con el cursor...

He pensado , que al activar un textArea se llame a una función para que una variable recoga el nombre
Código:
onactivate="nombre_area(minombre)"
pero cómo se pasa esa variable a otra función??

He realizado un búsqueda pero no he dado con la solución en otro post... me podríais echar una mano??

Gracias!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #2 (permalink)  
Antiguo 28/10/2004, 08:31
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Lo que tienes que hacer es usar una variable global.
<script>
var textarea="hola"; //está fuera de las funciones así que es global
function cambiarValor(param){
textarea=param;
}
</script>
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 28/10/2004, 09:08
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
gracias livin y luego... cómo usaría esa variablen en esta función??

Código:
<script type="text/javascript">
var nombre_txtArea="Comentarios";

function nombreArea(nombre){
	nombre_txtArea = nombre.toString();
}

function addtext(str) {
	var cadena = str.toString();
	cadena = cadena.split("><");
	if (cadena.length != 1) {
		etiqueta = cadena[0] + ">";
		cierre = "<" + cadena[1]; 
	} else {
		etiqueta = str.toString();
		cierre = "";
	}
	theSelection = document.selection.createRange().text;
	if (!theSelection)
 		document.getElementById('nombre_txtArea').value += str;
	if (document.selection.createRange().parentElement().tagName == 'TEXTAREA')
		document.selection.createRange().text = etiqueta + theSelection + cierre;
}

function help(help){
	document.registro.helpb.value = help;
}

</script>
es en esta línea donde la he de usar... pero me da error con y sin la comilla simple...
Código:
document.getElementById('nombre_txtArea').value += str;
gracias again ;)
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #4 (permalink)  
Antiguo 28/10/2004, 09:17
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Sin las comillas simples debería funcionarte. Puede ser que no hayas puesto el id correcto al textarea o que no haya metido el valor correcto en la variable. Haz un alert de nombre_txtArea.
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #5 (permalink)  
Antiguo 28/10/2004, 09:19
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
jeje, iba a borrar el msj porque me he dado cuén que había puesto mal el nombre de la función

Funciona perfectamente!!! muchas gracias living!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #6 (permalink)  
Antiguo 29/10/2004, 02:19
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
living... y porqué al pinchar en un botón del formulario no me pone el texto donde tenía el cursor?? qué tendría que hacer para solucionarlo??

help me plis ^_^
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #7 (permalink)  
Antiguo 29/10/2004, 03:49
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Eso es porque el textarea pierde el foco. Lo que tendrías que hacer es después de ejecutar cualquier acción es devolver el foco al textarea. Imaginate que le das a un botón para ejecutar una función de javascript, pues tendrías que meter en esa función este código para retornar al último textarea seleccionado


document.getElementById(nombre_txtArea).focus();
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #8 (permalink)  
Antiguo 29/10/2004, 04:07
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
ya lo he probado poniéndolo en la última línea de la función addtext... y efecivamente devuelve el foco.. pero las etiquetas las sigue poniendo al final del textArea... y lo que quiero es que ponga las etiquetas en donde estaba el cursor... creo que me expresé mal, aunque así me has ayudado a solucionar lo del retorno del foco ;)

Gracias again!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #9 (permalink)  
Antiguo 29/10/2004, 04:11
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Echa un vistazo a este link que me pasó en su día Caricatos. Ahí está un ejemplo de lo que pretendes hacer.

http://www.pepemolina.com/editor/editor.html

Por cierto Caricatos, me he dado cuenta de que no te lo agradecí en su día pero nunca es tarde...muchas gracias
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #10 (permalink)  
Antiguo 29/10/2004, 04:46
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
ufff, le voy a char un vistazo ... así que tengo que cambiar todo bueno, a ver si saco fuerzas

Gracias ambos!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
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




La zona horaria es GMT -6. Ahora son las 20:02.