11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

j'ai un problème concernant l'execution de JS en série.
En effet je veux d'abord lancer un script et à la fin de celui-ci changer d'URL
évidemment avec ce code cela ne marche pas car il change d'URL tout de suite:

<a onclick="Effect.toggle('test','slide', {duration: 1.0 }); parent.location.href='page.htm';" href="#">


merci de vos résponses.
Modifié par newbiemac (31 Mar 2008 - 16:57)
ok mais j'ai de la peine avec ces timer ?!?

maintenant j'essaye de changer d'URL avec la fonction:


<script type="text/JavaScript">
  			
  			function ext(self, pageNum, proj){
  				parent.location.href=self+'?page='+pageNum+'&projet='+proj;
  			}
  			
 </script>


qui est lancé normalement par le timer:

echo '<a onclick="Effect.toggle(\'thumbsdiv\',\'slide\', {duration: 1.0 }); window.setTimeout(ext('.$self.','.$pageNum.','.$proj.'),1000);" href="#">';

il execute le premier JS mais ne change pas d'URL

merci d'avance
ok mais j'ai de la peine avec ces timer ?!?

maintenant j'essaye de changer d'URL avec la fonction (en balise JavaScript):

			
function ext(self, pageNum, proj){
  	parent.location.href=self+'?page='+pageNum+'&projet='+proj;
}  			


qui est lancé normalement par le timer (en balise PHP):

echo '<a onclick="Effect.toggle(\'thumbsdiv\',\'slide\', {duration: 1.0 }); window.setTimeout(ext('.$self.','.$pageNum.','.$proj.'),1000);" href="#">';

il execute le premier JS mais ne change pas d'URL

merci d'avance
Modifié par newbiemac (31 Mar 2008 - 15:34)
Il me semble que lorsqu'on utilise la fonction setTimeout(), tu peux appeler ta fonction mais tu ne peux pas lui passer de paramètres Smiley cligne
Voici visiblement la bonne syntaxe :
window.setTimeout(fnct, delai[, param1, param2, ...]);

Mais il est également dit ceci :
a écrit :
Notez que le passage de paramètres supplémentaires à la fonction dans la première syntaxe ne fonctionne pas dans Internet Explorer.

Voici le lien d'où provient l'information : DOM:window.setTimeout
Hmm

ah ça m'énerve Smiley biggol
je n'arrive pas Smiley decu
maintenant j'ai:

function ext(self, pageNum, proj){
 parent.location.href=self+'?page='+pageNum+'&projet='+proj;
}


et



echo '<a onclick="Effect.toggle(\'thumbsdiv\',\'slide\', {duration: 1.0 }); window.setTimeout(\'ext()\',1000, \''.$self.'\',\''.$pageNum.'\',\''.$proj.'\');" href="#">';


mais les variables ne passent pas "undefined" Smiley rolleyes
Essayes avec :
window.setTimeout(function(){ext('<?php echo $self?>', '<?php echo $pageNum?>', '<?php echo $proj?>', )}, delai);
ok cela marche avec:


echo '<a onclick="Effect.toggle(\'thumbsdiv\',\'slide\', {duration: 0.5 }); window.setTimeout(function(){ext(\''.$self.'\', \''.$pageNum.'\', \''.$proj.'\')}, 500);" href="#">';



merci de vos propositions Smiley lol
a+