Bonjour,
Je ne suis pas particulièrement bon en js et me trouve face à un problème intriguant.
Le contexte : un développement en responsive et la nécessité de connaitre la hauteur de chaque blocs pour, au final, tout positionner en absolu avec du javascript, des animations etc. le tout, pour tout support.
Ne jugez pas forcément la "beauté" de mon code car c'est la tronche qu'il a après des heures de tortures ^^
Je n'ai pour le moment que deux "item" donc le résultat attendu en alert est du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 var infoHauteur = function () { var listeHauteurs = new Array; var total = 0; var hauteur = 0; $('.bg-img').each(function(index) { hauteur = $(this).height(); total += $(this).height(); listeHauteurs[index] = new Array( hauteur, total ); }); return listeHauteurs; } alert(new infoHauteur());
100, 100, 300, 400
qui correspond au tableau :
index 0 : valeur du bloc = 100 ; au total 100
index 1 : valeur du bloc 300 ; donc au total 400.
Bref, sur pc ça marche nickel.
Sur iPad et iphone cependant, je mets tout sur mon ftp, ça m'affiche les bonnes valeurs, je rafresh ... valeur 0 0 0 0.
je rafresh : 0 0 0 0
Je crée un nouvel onglet : 100 100 300 400.
sur android, ça me mets toujours 0 0 0 0 mais ça, je verrai plus tard.
Donc savez vous par quel phénomène, sous IOS, le js retourne une valeur différente à sa première exécution qu'aux suivantes ?
Je vous remercie d'avance et m'excuse si je n'ai pas été clair, n'hésitez pas à me le dire !
____
RESOLU : bon j'ai simplement rajouté la biblio jquery mobile mais je ne comprends pas pourquoi cela marchait avant, uniquement sur la première exécution et déconnais aux rafresh ....
Partager