JBLOCKS, EFFET APPARITION DAMIER

LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009 - 21 juin 2010 à 11:11
genepink Messages postés 3 Date d'inscription jeudi 11 mars 2010 Statut Membre Dernière intervention 14 novembre 2011 - 17 août 2010 à 21:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51927-jblocks-effet-apparition-damier

genepink Messages postés 3 Date d'inscription jeudi 11 mars 2010 Statut Membre Dernière intervention 14 novembre 2011
17 août 2010 à 21:46
PS et désolé pour les fautes d'orthographes :S :D
genepink Messages postés 3 Date d'inscription jeudi 11 mars 2010 Statut Membre Dernière intervention 14 novembre 2011
17 août 2010 à 21:45
Merci à tous pour vos commentaires ! Je suis désolé, je n'ai pas eu trop le temps de me replonger dans le code ces dernières seamines...

JDMCREATOR et MAKEINDESIGN -> le problème est régle, cf l'historique des modifications

LEFAUVE42 -> merci beaucoup pour ton commentaire très instructif !!! Je n'ai réglé que le problème urgent (preload, merci JQuery). Je me pencherai sur l'optimisation du code un peu plus tard.
Pour répondre à certaines de tes questions / commentaires : le $(".block-me").hide(); servait surtout à cacher les images dès l'affichage, pour ne pas qu'elles s'affichent en cas de temps mort durant l'exécution du script. Maintenant, avec le preload, il est incontournable je pense.
Pourquoi 2 float:left ? Parce que les navigateurs ne supportent pas tous le même code...
Pour le reste, tu as tout à fait raison, je m'y pencherai très bientôt...

Merci encore !
MakeinDesign Messages postés 2 Date d'inscription samedi 5 juin 2010 Statut Membre Dernière intervention 24 juin 2010
24 juin 2010 à 00:32
Bonsoir,

il ne fonctionne pas avec le navigateur chrome, et je ne vois pas comment changer ce code...

Bonne continuation.
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
23 juin 2010 à 20:14
Est-ce que c'est normal que ça ne fonctionne pas sous Safari 5 ?
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
21 juin 2010 à 11:11
L'effet est interessant, mais je ne peux m'empecher de relever quelques maladresses dans le code :
- Pourquoi faire un « $(".block-me").hide(); » alors que juste apres tu as une boucle qui parcourt toutes tes images. Ca fait faire deux boucles dans le DOM, dont une pour rien. Tu peux cacher tes images dans la seconde boucle.
- Tu changes l'id de tes images avant de passer a ta fonction block_it() un bout de cet id pour le reconstruire et recuperer l'image. Pourquoi ne pas simplement passer l'image a ta fonction (d'une part ca evite de changer l'id des images, ce qui est un peu intrusif, et d'autre part rechercher un element dans le dom a partir de son id, ca prend du temps pour rien). Tu devrais pouvoir faire pareil pour move_it.
- Tu fais beaucoups de concatenations de chaine pour rien dans tes boucles. tu pourrais faire la plupart en dehors. PAr exemple au lieux de calculer «"url("+img_src+")"» pour chaque div, tu pourrais faire directement «img_src = "url("+$(img).attr("src")+")"; ». Meme chose pour le style (et au fait, pourquoi setter 2 fois le "float: left;" ?).

Bonne optimisation !
Eric
Rejoignez-nous