antes de nada, enhorabuena por el trabajo, es genial ;-)
respecto al primer problema que comentas, yo también creo que la solución es crear esas "subhomes", pero eso no debería obligar a que el submenú se despliegue con el rollover (yo también soy de los que prefiere el clic)
por qué no usas algo como este código?:
this.boton.onclick = function(){ this.parentNode.show(); return false; // con esto deshabilitas el enlace }
lo he probado, y para que funcione he tenido que comentar las líneas:
/*document.onclick = function(){ this.deactivate(true); }*/
también he probado a ponerlo como una opción, de la siguiente forma:
this.evento = "onmouseover"; o this.evento = "onclick";
y luego usar
this.boton[this.evento] = function(){...}
pero si se usa onmouseover, el click seguiría llevando a los enlaces definidos (tal y como lo tienes ahora), y quizá sería mejor desactivarlo:
if(this.evento=="onmouseover") { this.boton.onclick = function(){ return false; } }
también le he estado dando vueltas a los z-index (zIndex en js), porque también estaría bien que el menú que se despliega pasara a un primer plano... pero no he tenido mucho éxito... :-(
Respecto al segundo problema, el escenario JS sin CSS, quizá podrías probar a leer cualquiera de las propiedades que asignas en tu CSS, y si no concuerdan con el valor que sabes que has definido, no hacer nada... m'explico? es un poco chapucilla, pero creo que funcionaría... ;-)
pero, insisto... es un trabajo genial... hay mucho olorcillo a actionscript en tu código... ;-)
Joseba Alonso escribió:
Efectivamente hay varios problemas que me gustaría contrastar:
1- Escenario sin JS pero con CSS. En este caso he pensado que cada uno de los enlaces de primer nivel llevaría a una subhome. No encuentro otra solución. La opción de dejar los menús desplegados la deseché porque haría que los menús se montaran unos sobre otros y además comprometerían la visibilidad del contenido. Es una de las razones por las que el menú funciona con rollover y no con clic. Esto permite acceder a las secciones de primer nivel. Aunque en mi opinión seria más cómodo que se desplegasen con un clic. A menos que se os ocurra otra solución...
2- Escenario con JS pero sin CSS. En este caso, aunque es muy raro, el menú falla. ¿Se le ocurre a alguien como detectar con JS que no se esta formateando con CSS? Este es un asunto pendiente...
3- Navegación con el teclado. Esta es una característica que quería incluir. De momento no la he puesto porque introduciría complejidad en el código y comprometería la extensibilidad del mismo. Es decir, seria más difícil adaptarlo a situaciones ligeramente diferentes, seria muy dependiente del diseño. En mi opinión ya estoy un poco en el límite en ese asunto. Es algo que he preferido dejar para una versión posterior. De todas maneras los menús de primer nivel tienen accesskey, aunque no despliega el menú, que sería lo deseable.
Me gustaría bastante oir opiniones sobre esto.
Un saludo,
P.D: Jose, las listas son ordenadas porque los clientes siempre dan importancia al orden en los que aparece el menú, así que asumo que las listas ordenadas son semánticamente mas correctas. Aunque este tema siempre lo he considerado un poco subjetivo.
Joseba Alonso www.5dms.com www.sidedev.net
-----Mensaje original----- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de jose florido Enviado el: jueves, 03 de febrero de 2005 10:35 Para: Ovillo, la lista de CSS en castellano Asunto: Re: [Ovillo] Dropdowns DOM
Hola Joseba!!
Muy bueno el menu!! enhorabuena!! :D
He estao echandole un ojo rapidamente y veo un par de cosas en cuanto a accesibilidad:
- No funciona con el teclado, esto incumple la pauta 9 de independencia de dispositivo () puedes arreglarlo usando los eventos onfocus y onblur junto con onmouseover y onmouseout.
- No se puede navegar con javascript deshabilitado y css habilitado (esta configuracion es comun, mucha gente deshabilita javascript por cuestiones de seguridad...). Con CSS deshabilitado y JS habilitado tampoco se puede (este perfil es muy extraño en mi opinion). En cambio si tienes deshabilitado tanto CSS como JS se ve una estupenda lista anidada sin problemas :)
Un duda, poruqe usas una lista ordenada en lugar de una desordenada?
Un saludo!!
-- Jose Florido www.avidos.net
----- Original Message ----- From: "Joseba Alonso" <[EMAIL PROTECTED]>
To: "'Ovillo, la lista de CSS en castellano'" <Ovillo@ovillo.org>
Sent: Wednesday, February 02, 2005 12:35 PM
Subject: [Ovillo] Dropdowns DOM
Hola a todos,
Estoy intentando crear un sistema de menús desplegables extensible y me gustaria, si no os importa, vuestra opinión sobre dicho script. Hay 3 metas que este desarrollo debe cumplir:
1- Debe basarse en standards 2- Debe ser accesible 3- Debe ser extensible
Agradecería cualquier comentario. Podéis utilizarlo si queréis. Es un código que pienso dejar abierto, un proyecto personal vamos. Pero me gustaría tener algún tipo de opinión, critica constructiva antes de publicarlo en ningun sitio.
http://www.sidedev.net/jsoop/dropdowns/
Gracias,
Joseba Alonso www.5dms.com www.sidedev.net
_______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo_ovillo.org
_______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo_ovillo.org
_______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo_ovillo.org
_______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo_ovillo.org