Hola a todos pues aqui vengo a pedir ayuda con javascript otra vez :P
El problema es este:
Quiero hacer una simple animacion de un menu como en acordeon que se despliegue a la derecha cuando cargue la pagina
para esto hice esto
html
Código HTML:
<ul>
<li>uno</li>
<li>dos</li>
<li>tres</li>
<li>cuatro</li>
<li>cinco</li>
</ul>
css
Código HTML:
ul{
display:block;
overflow:hidden;
padding:0px;
margin:0px;
}
ul li{
list-style-type:none;
float:left;
background-color:#666;
margin-right:10px;
position:relative;
top:0px;
padding:5px 10px;
}
Luego el javascript
:
jquery
Código:
jQuery(document).ready(function($){
var menu_node = null;
var menu_lenght = $("ul").children().length;
var menu_elements = $("ul").children();
var total_widths = 0;
var speed = 1000;
for(i=0;i<menu_lenght;i++){
menu_node = menu_elements[i];
total_widths += $(menu_node).outerWidth();
total_widths += parseInt($(menu_node).css("margin-left"),10);
total_widths += parseInt($(menu_node).css("margin-right"),10);
$(menu_node).css({"left":"-"+total_widths+"px","z-index":i});
}
for(i=0;i<menu_lenght;i++){
menu_node = menu_elements[i];
$(menu_node).animate({left:"0px"},speed);
}
});
Pues el problema es con IE8,IE7 el cual manda este error
Cita: Invalid argument. jquery-1.3.2.js, line 1061 character 4
:S
he seguido el error con el debuger de IE8 y he llegado hasta aqui.
Cita: 1661: elem[ name ] = value;
la variable name viene vacia.
He econtrado que lo que genera el error en mi codigo es esta linea
Código:
$(menu_node).css({"left":"-"+total_widths+"px","z-index":i});
Aqui siguieren una solucion pero no me funciono, si alguien ve como puedo cambiar mi code o arreglar jquery estaria genial
Gracias de antemano y saludos