5568 sujets
Sémantique web et HTML
Hello,
c'est énorme
Je ne te parlerais pas de requêtes, ou de temps de chargement... mais une chose est sûre. Quand tu vas animer les bestiaux, les machines vont chauffer. Surtout les tablettes & mobiles. Ces-derniers ont vraiment du mal à déplacer une grande quantité d'éléments.
Maintenant, aux "techniques" de te dire : c'est énorme.
Ju
c'est énorme
Je ne te parlerais pas de requêtes, ou de temps de chargement... mais une chose est sûre. Quand tu vas animer les bestiaux, les machines vont chauffer. Surtout les tablettes & mobiles. Ces-derniers ont vraiment du mal à déplacer une grande quantité d'éléments.
Maintenant, aux "techniques" de te dire : c'est énorme.
Ju
Donc c'est à toi à expliquer à ton client pourquoi c'est mauvais pour ses visiteurs d'afficher autant d'images dans un slider.
Mettons que tu affiches chaque image 5 secondes (ce qui est assez peu). Tu rajoute le temps de chargement et les transitions. On va vite arriver à une vingtaine de minutes. Personne de normalement constitué ne vas rester devant un slider pendant 20 minutes.
Même une vidéo de 2 minutes a du mal a accrocher les internautes alors imagine si c'est juste des images qui défilent pendant 20 minutes.
Mettons que tu affiches chaque image 5 secondes (ce qui est assez peu). Tu rajoute le temps de chargement et les transitions. On va vite arriver à une vingtaine de minutes. Personne de normalement constitué ne vas rester devant un slider pendant 20 minutes.
Même une vidéo de 2 minutes a du mal a accrocher les internautes alors imagine si c'est juste des images qui défilent pendant 20 minutes.
jb_gfx a écrit :
On va vite arriver à une vingtaine de minutes. Personne de normalement constitué ne vas rester devant un slider pendant 20 minutes.
Autant je suis d'accord avec ce que tu dis, pour ce point précis (en quote) je ne suis pas d'accord avec toi. Si le contenu est intéressant, on le regarde...
ça t'es jamais arrivé d'aller sur You Tube "pour 5mn" et y être encore 2 heures après?
La question que je me posais c'est techniquement... si il y avait des limites ou pas.. :
- mémoire
- capacité Javascript
- etc...
mais je suis d'accord avec toi que 200 images c'est trop....
Peut être qu'en essayant avec du localstorage (donc réservé aux navigateur le supportant (HTML5)) tu peux soulager le navigateur, et préchargé plus facilement tes images (limité à 5 Mo il me semble de mémoire)
Ensuite, quel est la taille des images, quel poids ?
Le travail sur la DOM est ce qui, AMHA fait le plus "ramer" un navigateur, en plus, s'en suis les requêtes HTTP ...
On va essayer de compter un peu, chaque image reste 5 secondes => 17 minutes d'animations.
Sur chaque image, il faut :
- Requête HTTP pour obtenir l'image suivante
- Injection de la nouvelle image dans la DOM
- Requête HTTP pour télécharger et afficher l'image
- Animation de retrait de l'image précèdente
- Animation d'arrivée de l'image
- Suppression de l'ancienne image de la DOM
C'est déjà pas mal comme opération.
Opération DOM
2 * 200 = 400 opération de DOM, ce qui fait 0,4 opération dans la DOM par seconde
Requête HTTP:
2 * 200 = 400 requête HTTP, ce qui fait 0,4 requête HTTP par seconde (y'a pire)
----
Pour résumer, à part la bande passante, je ne pense pas que cela soit infaisable et que cela soit trop lourd pour les "ordinateurs".
Pour les tablettes/smartphone ... j'en sais rien !
Ensuite, quel est la taille des images, quel poids ?
Le travail sur la DOM est ce qui, AMHA fait le plus "ramer" un navigateur, en plus, s'en suis les requêtes HTTP ...
On va essayer de compter un peu, chaque image reste 5 secondes => 17 minutes d'animations.
Sur chaque image, il faut :
- Requête HTTP pour obtenir l'image suivante
- Injection de la nouvelle image dans la DOM
- Requête HTTP pour télécharger et afficher l'image
- Animation de retrait de l'image précèdente
- Animation d'arrivée de l'image
- Suppression de l'ancienne image de la DOM
C'est déjà pas mal comme opération.
Opération DOM
2 * 200 = 400 opération de DOM, ce qui fait 0,4 opération dans la DOM par seconde
Requête HTTP:
2 * 200 = 400 requête HTTP, ce qui fait 0,4 requête HTTP par seconde (y'a pire)
----
Pour résumer, à part la bande passante, je ne pense pas que cela soit infaisable et que cela soit trop lourd pour les "ordinateurs".
Pour les tablettes/smartphone ... j'en sais rien !
Bonjour,
En fait, ça dépend de Comment tu voudra les afficher ?
Est ce en les chargeant tout au début ? ou en scrollant ? dans un slider ?
Si par exemple, je voudrais les afficher dans un slider, ce dernier dans un premier temps, n'affiche que 5 images. Au clic sur Suivant, je peux faire une requette Ajax et recharger que les 5 suivants images .
Autre possibilité, je charge le tout dans un objet JS, et je manipule tout ça en front..
En fait, ça dépend de Comment tu voudra les afficher ?
Est ce en les chargeant tout au début ? ou en scrollant ? dans un slider ?
Si par exemple, je voudrais les afficher dans un slider, ce dernier dans un premier temps, n'affiche que 5 images. Au clic sur Suivant, je peux faire une requette Ajax et recharger que les 5 suivants images .
Autre possibilité, je charge le tout dans un objet JS, et je manipule tout ça en front..
adridista a écrit :
Bonjour,
En fait, ça dépend de Comment tu voudra les afficher ?
Est ce en les chargeant tout au début ? ou en scrollant ? dans un slider ?
c'est dans un slider...., j'ai choisi sudo slider car il gère assez bien les images de tailles différentes...
pour l'instant y en a 44 (images) dans une page que je teste et ça à l'air de tenir.
les 44 images sont dans le code html.
Il faut aussi apprendre à dire non, c'est une preuve de professionnalisme si l'on sait communiquer sur le pourquoi du comment.
Pose les bonnes questions à ton client et propose lui les solutions adaptées...
Comme :
- L’utilité finale d'avoir 200 photos dans le slide? Si c'est dans l'espoir que l'utilisateur reste longtemps sur la même page il y a d'autres moyens. Si c'est pour avoir constamment un contenu différent il suffit de charger un set d'images en fonction d'une règle (il suffit dans ce cas de multiplier les sets différents et si la règle est bonne l'utilisateur pourras avoir accès à tout un panel sans lourdeur).
- Veut-il sacrifier le confort de l'utilisateur au profit d'un nombre d'images qui ne seront probablement pas toutes regardées? Ce qui signifie également que les dernières images si ce n'est pas de l'aléatoire seront probablement jamais vues !
- N'est-ce pas plus pertinent de choisir une galerie au vu du nombre élevé de photos?
Pour conclure :
- Est-ce que c'est techniquement réalisable? Oui, des solutions te sont proposées par les autres membres.
- Est-ce approprié? Difficile sans connaître les motivations du client.
- Est-ce une bonne idée? J'en doute, après tout dépend, une fois de plus, du résultat attendu.
Pose les bonnes questions à ton client et propose lui les solutions adaptées...
Comme :
- L’utilité finale d'avoir 200 photos dans le slide? Si c'est dans l'espoir que l'utilisateur reste longtemps sur la même page il y a d'autres moyens. Si c'est pour avoir constamment un contenu différent il suffit de charger un set d'images en fonction d'une règle (il suffit dans ce cas de multiplier les sets différents et si la règle est bonne l'utilisateur pourras avoir accès à tout un panel sans lourdeur).
- Veut-il sacrifier le confort de l'utilisateur au profit d'un nombre d'images qui ne seront probablement pas toutes regardées? Ce qui signifie également que les dernières images si ce n'est pas de l'aléatoire seront probablement jamais vues !
- N'est-ce pas plus pertinent de choisir une galerie au vu du nombre élevé de photos?
Pour conclure :
- Est-ce que c'est techniquement réalisable? Oui, des solutions te sont proposées par les autres membres.
- Est-ce approprié? Difficile sans connaître les motivations du client.
- Est-ce une bonne idée? J'en doute, après tout dépend, une fois de plus, du résultat attendu.