2012-08-23 18 views
5

Tengo un menú de acordeón que se desarrolla con css3 puro. Actualmente está abriendo el menú cuando está sobre él, pero quiero que se abra al hacer clic. ¿Lo logro?Convierta el acordeón de desplazamiento en onclick

Una ayuda más. Actualmente el contenido div está en el lado derecho del encabezado, pero necesito que se abra en el lado izquierdo.

Y el contenido div debe tener un ancho automático basado en el contenido.

Aquí es el DEMO

+1

intente utilizar: active en lugar de: hover – anderssonola

+0

Usar active es cerrar el contenido div cuando dejo el botón del mouse. Quiero que el clic para alternar – Sowmya

Respuesta

3
$('h3','.horizontalaccordion ul li').on('click',function() { 
    $(this).closest('li').toggleClass('hover').siblings().removeClass('hover'); 
});​ 

FIDDLE

+0

Pero cuando saco el cursor de la div, el contenido se está fugando. ¿Puedes comprobar tat – Sowmya

+0

'.horizontalaccordion> ul> li.hover> div {display: block; } 'en lugar de' .horizontalaccordion: hover> ul> li.hover> div {display: block; } '- http://jsfiddle.net/thebabydino/a545y/14/ – Ana

+0

@Ana Awesome !! Esta funcionando. Una última ayuda ... ¿Cómo hago para que ese panel de contenido se abra en el lado izquierdo? – Sowmya

0

Creo que no sólo se necesita un clic, pero también quisiera cerrar los paneles abiertos anteriormente, por favor, echa un vistazo a este código:

$('h3','.horizontalaccordion ul li').click(function() { 
    $('*[class*=hover]').removeClass('hover'); // close all opened tabs 
    $(this).closest('li').addClass('hover'); // open the currently clicked one 
});​ 

jsFiddle Example

¡Espero que te sirva!

+0

trabajando pero nuevamente el mismo problema. expanda un menú saque el cursor del acordeón y oculte el contenido. Pls chk – Sowmya

+0

Acabo de comprobarlo en Chrome y todo está sin problemas? ¿Podría decirme cuál es su navegador? –

Cuestiones relacionadas