21/03/2003, 20:22
|
| | | Fecha de Ingreso: marzo-2002
Mensajes: 157
Antigüedad: 22 años, 11 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 |