2010-07-13 9 views
4

J'ai un écran de démarrage sur un site Web qui a un div avec l'ID de "splash" j'essaie de faire la div fondre alors si l'utilisateur clique sur le div il se fane et redircts vers le site principal. Si l'utilisateur ne clique pas, il disparaît et redirige après 10 secondes.redirection jquery sur clic ou après 10 secondes

La redirection temporisée fonctionne mais pas la fonction de clic.

<script type="text/javascript"> 
    $(document).ready(function() { 
    $('#splash').hide(); 
     $('#splash').fadeIn(1000, function() { 
       $(this).delay(10000).fadeOut(1000, function() { 
       window.location = 'http://www.examle.com'; }); 
       $(this).click().fadeOut(1000,function() { 
       window.location = 'http://www.example.com'; }); 
     }); 
    }); 
</script> 

Toute aide serait grande

Répondre

5

Essayez ceci:

$(document).ready(function() { 
    $('#splash').hide(); 
    $('#splash').click(function(){ 
      $(this).fadeOut(1000,function() { 
        window.location = 'http://www.example.com'; }); 
      }); 
    $('#splash').fadeIn(1000, function() { 
      window.setTimeout (function() { 
      $('#splash').fadeOut(1000, function() { 
       window.location = 'http://www.example.com'; }) } 
      , 10000); 
    }); 
});​ 

Les changements que j'ai fait à l'exemple:

Je suis déplacé régler le gestionnaire de clic en dehors de la Fonction fadeOut (meilleure pratique, IMHO) et j'ai changé votre appel à delay() en setTimeout(). La différence est que delay() ne permettra pas l'exécution d'un autre code jQuery en arrière-plan, contrairement à setTimeout().

+0

Merci, la fonction clic ne fonctionne toujours pas avec le code ci-dessus. – BandonRandon

+0

Désolé, l'erreur n'était pas ce que je pensais initialement. Essayez l'exemple de code mis à jour :) – Josiah

+0

Le problème est qu'il n'arrête pas 'delay()' sur le clic. Donc, si vous cliquez sur vous devez toujours attendre jusqu'à ce que le délai soit terminé. Bizarre. (Mais il semble que vous l'avez découvert :)) – BandonRandon

Questions connexes