2016-08-19 4 views
0

J'utilise le code ci-dessous pour le défilement infini. Cela fonctionne parfaitement, mais seulement quand je suis au bas de la page. Je veux qu'il charge la page suivante du contenu quand je suis environ 3/4 vers le bas de la page.jQuery Infinite Scroll Charge avant le fond

$(window).scroll(function() { 
      if($(window).scrollTop() + $(window).height() == $(document).height()) { 
      $('#infinite-load').click(); 
     } 
}); 

j'ai changé le code à ceci:

$(window).scroll(function() { 
      if($(window).scrollTop() <= ($(document).height()) - $(window).height() - 10) { 
      $('#infinite-load').click(); 
     } 
}); 

Et maintenant, sur la première défilement, peu importe à quel point je défiler vers le bas, les charges de contenu de la page suivante. Si vous faites défiler un pixel une fois de plus, une autre page se chargera.

+0

essayer ceci: if ($ (fenêtre) .scrollTop() + $ (fenêtre) .height()> ($ (document) .height()/4 * 3)) { – prizm1

+0

Votre code semble avoir fonctionné! Merci beaucoup prizm1! – HTML

Répondre

0

Essayez de changer votre code pour ceci. Je ne sais pas si elle travaillerait ..

var h = ($(window).height()*1.25)+$(window).scrollTop(); 
h = parseInt(h); 
var h2 = parseInt($(window).height()*1.25); 
if(h >= ($(document).height()) && h <= ($(document).height())+h2) 
+0

Merci pour votre commentaire. Malheureusement, le code ne fonctionnait pas correctement, mais votre réponse serait certainement une bonne solution si la structure du code de mon site était correcte. Je suis sûr que la question de votre code ne fonctionne pas est une faute de ma part. – HTML