|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
Bonjour à tous, j'essaye actuellement de créer un slideshow (diaporama) automatique en javascript mais Safari me renvoit l'erreur "TypeError: Result of expression 'link' [null] is not an object". Pouvez-vous m'aidez. Veuillez m'excuser pour mon peu d'expérience dans ce langage.
Fichier html : Code :
Code :
|
||||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 802 ![]() |
Au moment ou ton script est appelé et l'instruction
Code :
link=document.getElementById('image');
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Inscription : mars 2008 Messages : 2 686 ![]() |
Bonjour,
Je vois aussi d'autres problèmes comme cette instruction : Code :
link.setAttribute('source',tab[currentimg]); Code :
link.setAttribute('src',tab[currentimg]); Je ne sais d'ailleurs pas pourquoi on récupère la source (elle sert plus loin ?). Il reste le fait que ce changement de source de l'image n'est appelé qu'une fois. Il serait mieux de préciser ce bloc d'instructions en fin de fonction chgimg(). |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Tlouye Ci Inscription : mars 2004 Messages : 1 450 ![]() |
Pour compléter :
Mets ton code dans une fonction et appelle la dans le onload du body : Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
Merci beaucoup pour vos réponses. Je vais tester tout ça et vous tenir au courant.
|
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
J'ai maintenant changer le code javascript de cette façon mais le diaporama ne marche pas.
Code :
|
||
|
|
00
|
|
|
#7 | ||
![]() ![]() ![]() Inscription : mars 2008 Messages : 2 686 ![]() |
Il me semble que ces instructions-ci doivent se trouver dans la fonction chgimg():
Code :
|
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
Le problème justement je pense c'est que la fonction chgimg() n'est pas appelé tous les x temps. Mais je ne sais pas où l'appeler et surtout comment.
|
|
|
00
|
|
|
#9 |
![]() ![]() ![]() Inscription : mars 2008 Messages : 2 686 ![]() |
A priori elle sera appelée toutes les 3 secondes :
Pour peu que vous ayez suivi le conseil de Bovino et de Loceka en appelant la fonction lorsque le body est chargé : |
|
|
10
|
|
|
#10 |
![]() ![]() Inscription : janvier 2011 Messages : 2 930 ![]() |
Bonjour,
avec le code que je vois la seule chose que fait ton setInterval, est d'incrémenter ton compteur currentimg et le ramené à 1 quand il dépasse le nombre d'image. En aucun cas il n'interagit avec une autre fonction. |
|
|
00
|
|
|
#11 | ||||
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
Désolé du nombre des mes posts mais sayez je pense que mon diapo marche ou du moins en partie. J'ai juste appeler chgimg() au load du body. Mais il reste un probleme au bout d'un certain temps les images se mettent à défiler vite comme si cela bugger.
Code :
Code :
|
||||
|
|
00
|
|
|
#12 |
![]() ![]() ![]() Inscription : mars 2008 Messages : 2 686 ![]() |
Oui parce que là vous relancez chaque fois un setInterval. Ce n'est pas la fonction chgimg() qui doit être appelée au onload mais bien la fonction demarrage(). Et ceci ne doit apparaitre que dans demarrage() :
|
|
|
10
|
|
|
#13 |
|
Invité de passage
![]() valentin andre Inscription : mai 2010 Messages : 10 ![]() |
Bon voila mon periple est en quelque sorte terminé. Merci beaucoup à tous le monde. Autre probleme si cela vous interresse j'aimerais faire un diaporama qui défile vers la gauche un peu comme celui du site d'apple dans la section iphone. Merci
|
|
|
00
|
|
|
#14 |
|
Membre éprouvé
![]() Inscription : janvier 2003 Messages : 491 ![]() |
Pour le diaporama ressemblant au site d'Apple je t'oriente vers les sliders JQuery (une recherche Google t'aidera).
__________________
"Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant." |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com