Foros del Web » Programando para Internet » Javascript »

Menú acordeón ddaccordion.js

Estas en el tema de Menú acordeón ddaccordion.js en el foro de Javascript en Foros del Web. Buenas, tengo un dudo. Estoy haciendo correr un excelente script hallado en dynamicdrive. Se trata de ddaccordion.js, funciona de fábula y tal. Se expande según ...
  #1 (permalink)  
Antiguo 21/05/2010, 07:44
 
Fecha de Ingreso: febrero-2008
Mensajes: 120
Antigüedad: 16 años, 2 meses
Puntos: 1
Menú acordeón ddaccordion.js

Buenas, tengo un dudo.

Estoy haciendo correr un excelente script hallado en dynamicdrive.

Se trata de ddaccordion.js, funciona de fábula y tal.

Se expande según la característica CSS.

Os pego todo el código, me perdonareis, pero lo considero necesario para que entendais el problema.

--------------------------------------------------------------------------------------------------------
La función es esta:
------------------------------------------------------------------------------------------------------

<script type="text/javascript">


ddaccordion.init({ //top level headers initialization
headerclass: "expandable", //Shared CSS class name of headers group that are expandable
contentclass: "categoryitems", //Shared CSS class name of contents group
contentclass2: "categoryitems2", //Shared CSS class name of contents group

revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)? true/false
defaultexpanded: [0], //index of content(s) open by default [index1, index2, etc]. [] denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", "openheader"], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
togglehtml: ["prefix", "", ""], //Additional HTML added to the header when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
//do nothing
}
})

ddaccordion.init({ //2nd level headers initialization
headerclass: "subexpandable", //Shared CSS class name of sub headers group that are expandable
contentclass: "subcategoryitems", //Shared CSS class name of sub contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid value: "click" or "mouseover
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)? true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc]. [] denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["opensubheader", "closedsubheader"], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
togglehtml: ["none", "", ""], //Additional HTML added to the header when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
//do nothing
}
})


</script>

--------------------------------------------------------------------------------------------------------
EL SCRIPT ES ESTE:
----------------------------------------------------------------------------
http://www.dynamicdrive.com/dynamici...ddaccordion.js

---------------------------------------------------------------------------------------------
La aplicación es esta:
--------------------------------------------------------------------------------------------
<h3 class="menuheader expandable">Enunciado</h3>
<ul class="categoryitems">
<li><a href="blabla" target="_blank">enlace</a></li>
</ul>

-----------------------------------------------------------------------------------
PROBLEMA
-----------------------------------------------------------------------------------

En todas las opciones, para que el menú quede marcado, es necesario que sea "expandable" y que esté seguido de un <ul>.

Mi intención es que el botón quede marcado sin necesidad de que sea "expandable" ni que tenga submenus.

He probado a hacer esto:
<h3 class="menuheader expandable"><a href="enlace">Enunciado</a></h3>
<ul class="categoryitems"><li></li></ul>

y funciona, pero no me lleva al enlace.


Alguna sugerencia?

Gracias y perdón por la parrafada.
  #2 (permalink)  
Antiguo 12/07/2010, 02:15
 
Fecha de Ingreso: julio-2010
Mensajes: 1
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Menú acordeón ddaccordion.js

Hola Kadet.

Se que ya ha pasado un tiempo desde que has realizado la consulta, pero la respondo por si acaso.

Para dejar marcados menús que no contengan submenús, debes dirigirte a la función, y modificar revealtype: "click" por revealtype: "clickgo". Además, en el código, puedes eliminar las etiquetas "<li>" de "categoryitems", quedando como "<ul class="categoryitems"></ul>".

He realizado la prueba con estas modificaciones, y me funciona correctamente.

Espero haberte servido de ayuda.

Saludos.

Etiquetas: acordeon, ddaccordion
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 16:31.