Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/03/2003, 20:22
Avatar de sci-fi
sci-fi
 
Fecha de Ingreso: marzo-2002
Mensajes: 157
Antigüedad: 22 años, 2 meses
Puntos: 0
hola,

la cuestión es que la manera de controlar los menúes con eventos es independiente del código que posteás... Por ejemplo, si querés cambiar el tipo de evento para llamar a la función de mostrar/ocultar, si lo hacés con javascript embebido en el HTML, en lugar de utilizar onClick (o directamente -puesto que se trata de un enlace, el que tiene un evento por "defecto" onclick, que es seguir el enlace-, utilizando un href="javascript: código") usás onMouseOver y onMouseOut:

<a href="javascript:"
onMouseOver="funcion_que_muestra_el_menu(cual_menu );"
onMouseOut="funcion_que_oculta_el_menu(cual_menu); ">

de lo contrario si accedés a los enlaces con los que querés disparar los menúes, podés registrar los eventos dentro de un script:

objeto_que_controla_menu.onmouseover = funcion_que_muestra_el_menu;

objeto_que_controla_menu.onmouseout = funcion_que_oculta_el_menu;

el código de arriba es literal; no hay que poner paréntesis después de "funcion_que_oculta_el_menu" etc, porque no queremos ejecutar la funcíón, sino registrar un evento hacia una función; por lo que ponemos solamente el nombre de la función, sin paréntesis. Esto se debe a la lógica del evento: un evento sucede cuando el usuario lo realiza, solamente entonces se ejecutará la función asignada... si agregamos () se ejecutará la función en el momento del parsing del script y no cuando suceda el evento... igualmente, "onmouseover" y "onmouseout" van así todo en minúsculas, de lo contrario arrojarán error (no van como convencionalmente en el HTML, "onMouseOut", etc)

espera que te sirva, y saludos
__________________
webdeveloper
http://www.javascripters.com.ar/
diseño web y tecnología