-
Dock style Mac en JS
Hey,
j'ai fait un ptit script pour reproduire ce bon vieux dock apple.
Tout va a peu près bien jusqu'au moment ou j'essaie de mettre un fondu au grossissement des icônes.
Pour faire ce fameux fondu j'ai remplacé mon
Code:
cible.style.width = new_width+"px";
par un
Code:
setInterval(size, 10, cible, new_width);
et la fonction size est censé augmenter de 1 en 1 px, ce qu'elle fait mais tres bizarement
Je vous ai mis la version qui marche ici et la foireuse ici (toujours ctrl+u pour les sources hein)
Si vous avez des idées n'hésitez pas !
PS : je ne veux pas faire comme ce salaud qui en fait un super (Grrrrrrrrrrrrrrrr jaloux) mais lui il fait augmenter le height en fonction de la position du curseur genre style.height = x_mouse/grand_height*100
-
euh...
Je sais que c'est pas sympa arrivé à la fin d'un projet d'entendre que ça aurait été mieux de faire différemment... Mais pourquoi tu t'es pas basé sur une librairie type prototype ou mootools pour faire ça ? ça aurait été plus simple je pense, surtout que ça a déjà été fait :
http://www.chrisesler.com/mootools/fisheye/
Sinon pour ton code je vois pas trop, à part que la réduction des icônes ne se fait plus et que la fonction size s'applique à l'ensemble des icônes sur lesquels on a déjà eu un mouseover, et qu'une boucle semble s'effectuer une fois le script lancé...
C'est bien pour ça qu'un tween avec mootools t'aurait bien aidé pour faire un truc fluide ! et plus facile à coder...
Si je trouve ton pb, je re-poste, sinon bon courage !
-
Code:
setInterval(size, 10, cible, new_width);
Elle sort d'où cette syntaxe ? setInterval ne prend que 2 arguments, le code à exécuter (sous forme de chaîne, ce qui n'est pas très bien ou de fonction ce qui est mieux) et un intervalle en ms !
Code:
setInterval(function(){//tes instructions},ms);