2013-02-17 4 views
-1

Un site wordpress que j'ai travaillé semble avoir quelque chose d'étrange à propos de l'initiation de certains de ses scripts. Celui que je suis actuellement le plus concerné est l'en-tête de liste déroulante. Il est évidemment dénué de style car j'expérimente juste, mais, si vous regardez, il ne devrait pas tomber jusqu'à une certaine longueur sur la page, et pendant qu'il le fait, au chargement de la page, il se montre sous l'interaction de l'utilisateur. Est-ce que quelqu'un sait ce que cela pourrait arriver? Toute aide serait très appréciée.Les javascripts ne démarrent pas correctement

Le lien du site il nextworld.kbddev.com

Voici mon code pour la barre:

<script> 
$(function() { 
    $(window).scroll(function(){ 
     if($(window).scrollTop() > 542){ 
      $("#follownav").slideDown("fast"); 
      $('#follownav').removeClass('hide').addClass('show'); 

     } 
    }); 
    $(window).scroll(function(){ 
     if($(window).scrollTop() < 542){ 
      $("#follownav").slideUp("fast"); 
     } 
    }); 
}); 
</script> 
+1

L'événement se déclenche de défilement lorsque vous faites défiler, ce qui rend votre nouveau feu de fonction et à nouveau lorsque la page défile, et chaque fois que le scrollTop est au-dessus ou au-dessous de ce nombre, le glissaient et le changement des classes se passe des milliers de fois. Vous devriez le limiter d'une manière ou d'une autre, en vérifiant s'il est visible ou d'une autre façon de savoir que vous avez déjà fait le glissement, pour éviter qu'il ne se déclenche encore et encore. – adeneo

Répondre

0

Le problème est que vous n'êtes pas le contrôle de la charge de page.

Une solution simple serait:

$(function(){ 
    $(window).scroll(); 
}); 
+0

pas vrai ... la fenêtre existe avant l'exécution du code. Vous pouvez lier des événements à 'window' ou' document' en dehors de 'document.ready' – charlietfl

+0

Oui, mais JQuery est-il chargé? – MrJD

+1

chaque fois que vous utilisez '$' jQuery doit être chargé avant. Votre code échouera si ce n'est pas aussi – charlietfl

Questions connexes