6 JQuery Infinite Scrolling Demos
Key Takeaways
- Der Artikel enthält sechs Demos zur Implementierung von Infinite Scrolling, eine Funktion, mit der kontinuierliche Scrollen durch Inhalte ermöglicht werden kann, ohne auf Paginationslinks zu klicken, die Benutzererfahrung und das Engagement zu verbessern.
- Die Demos enthalten unendlich Scrollen durch Gitter, Blog -Beiträge, Bilder, Zahlen, Tabellenkalkulationen und eine Kombination aus unendlichem Scrollen und Pagination. Jede Demo ist in JQuery geschrieben, obwohl sie für Vanille -JS angepasst werden können, und einige verwenden JQuery -Plugins.
- Die Implementierung von Infinite Scrolling kann entsprechend den Anforderungen des Projekts angepasst werden, z.
Diese Demo verwendet das JQuery -Mauerwerks -Plugin zusammen mit dem unendlichen Scroll -Plugin. Das Mauerwerks -Plugin ist gut zum Erhalten von Flüssigkeitsnetzlayouts. Das unendliche Scroll -Plugin von Paul Irish ist gut darin, Seiten zu laden, die bereits existieren (daher ist es gut für Ihre SEO). Sie können es verwenden, um statische Seiten wie Page2.html, page3.html usw. zu laden, aber dieses Plugin verarbeitet auch generierte Seiten wie Seite.php? P = 2, Seite.php? P = 3. Um es zu verwenden, müssen Sie jedoch eine Seitenzahl haben, um in Ihren URLs zu steigern. Wenn Sie Seiten wie Page.php? Data = xxx haben, ist dieses Plugin nicht für Sie.
Verwendung - html<span><span><span><div</span> class<span>="grid"</span>></span> </span> <span><span><span><div</span> class<span>="grid-item grid-item-2"</span>></span> </span> <span><span><span><p</span>></span>content<span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> … <span><span><span></div</span>></span> </span> <span><!-- The next page which content will be loaded when scrolled --> </span><span><span><span><nav</span> id<span>="pagination"</span>></span> </span> <span><span><span><p</span>></span><span><span><a</span> href<span>="page-2.html"</span>></span>Page 2<span><span></a</span>></span><span><span></p</span>></span> </span><span><span><span></nav</span>></span></span>
<span>$(document).ready(function() { </span> <span>var grid = $('.grid'); </span> grid<span>.masonry({ </span> <span>itemSelector: '.grid-item', </span> <span>columnWidth: 200 </span> <span>}); </span> grid<span>.infinitescroll({ </span> <span>// Pagination element that will be hidden </span> <span>navSelector: '#pagination', </span> <span>// Next page link </span> <span>nextSelector: '#pagination p a', </span> <span>// Selector of items to retrieve </span> <span>itemSelector: '.grid-item', </span> <span>// Loading message </span> <span>loadingText: 'Loading new items…' </span> <span>}, </span> <span>// Function called once the elements are retrieved </span> <span>function(new_elts) { </span> <span>var elts = $(new_elts).css('opacity', 0); </span> elts<span>.animate({opacity: 1}); </span> grid<span>.masonry('appended', elts); </span> <span>}); </span><span>});</span>
Diese Demo verwendet kein Plugin oder keine Bibliothek, um die Infinite Scrolling -Funktion zu verarbeiten. Jedes Mal, wenn das Ende der Seite vom Benutzer erreicht wird, wird ein neuer Beitrag geladen, der durch ein PHP -Skript generiert wird, das den entsprechenden HTML -Code widerspiegelt. Die Demo erreicht nie das Ende des Inhalts, aber Sie können dies erreichen, indem Sie beispielsweise eine leere Zeichenfolge wiederholen, wenn keine Beiträge mehr zu zeigen sind. Wir zeigen ein Ladebild am Ende der Seite im Geiste von Twitter.
Beachten Siehe den Stift Infinite Scrollen durch Blog -Beiträge von SitePoint (@sinepoint) auf CodePen.
Verwendung - html
<span><span><span><div</span> class<span>="grid"</span>></span> </span> <span><span><span><div</span> class<span>="grid-item grid-item-2"</span>></span> </span> <span><span><span><p</span>></span>content<span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> … <span><span><span></div</span>></span> </span> <span><!-- The next page which content will be loaded when scrolled --> </span><span><span><span><nav</span> id<span>="pagination"</span>></span> </span> <span><span><span><p</span>></span><span><span><a</span> href<span>="page-2.html"</span>></span>Page 2<span><span></a</span>></span><span><span></p</span>></span> </span><span><span><span></nav</span>></span></span>
<span>$(document).ready(function() { </span> <span>var grid = $('.grid'); </span> grid<span>.masonry({ </span> <span>itemSelector: '.grid-item', </span> <span>columnWidth: 200 </span> <span>}); </span> grid<span>.infinitescroll({ </span> <span>// Pagination element that will be hidden </span> <span>navSelector: '#pagination', </span> <span>// Next page link </span> <span>nextSelector: '#pagination p a', </span> <span>// Selector of items to retrieve </span> <span>itemSelector: '.grid-item', </span> <span>// Loading message </span> <span>loadingText: 'Loading new items…' </span> <span>}, </span> <span>// Function called once the elements are retrieved </span> <span>function(new_elts) { </span> <span>var elts = $(new_elts).css('opacity', 0); </span> elts<span>.animate({opacity: 1}); </span> grid<span>.masonry('appended', elts); </span> <span>}); </span><span>});</span>
Diese Demo lädt Bilder auf unendlicher Schriftrolle ein und erreicht nie das Ende. Es verwendet das JQuery Endless Scroll -Plugin, das so angepasst werden kann, dass sie das Laden von X -Anzahl von Pixeln vom unteren Bildschirm unterliegen. Die Demo klingt dieselben Bilder und fügt sie am Ende der Liste und so weiter ein. Das Skript kann jedoch so angepasst werden, dass die Bilder aus verschiedenen Quellen ganz einfach geladen werden.
Siehe den Stift Infinite Scrollen durch Bilder von sitepoint (@sinepoint) auf CodePen.
Verwendung - html
<span><span><span><ul</span> id<span>="posts"</span>></span> </span> <span><span><span><li</span>></span> </span> <span><span><span><article</span>></span>content<span><span></article</span>></span> </span> <span><span><span></li</span>></span> </span> … <span><span><span></ul</span>></span> </span> <span><span><span><p</span> id<span>="loading"</span>></span> </span> <span><span><span><img</span> src<span>="images/loading.gif"</span> alt<span>="Loading…"</span> /></span> </span><span><span><span></p</span>></span></span>
<span>$(document).ready(function() { </span> <span>var win = $(window); </span> <span>// Each time the user scrolls </span> win<span>.scroll(function() { </span> <span>// End of the document reached? </span> <span>if ($(document).height() - win.height() == win.scrollTop()) { </span> <span>$('#loading').show(); </span> $<span>.ajax({ </span> <span>url: 'get-post.php', </span> <span>dataType: 'html', </span> <span>success: function(html) { </span> <span>$('#posts').append(html); </span> <span>$('#loading').hide(); </span> <span>} </span> <span>}); </span> <span>} </span> <span>}); </span><span>});</span>
Diese Demo verwendet das gleiche Plugin wie das vorherige, aber wir haben die unendliche Schriftrolle auf eine Liste mit einer eigenen vertikalen Scrollbar angewendet. Wenn Sie nach unten scrollen, werden die Zahlen einfach als Listenelemente angehängt.
Siehe Stift eine unendliche Liste von Zahlen von SitePoint (@sinepoint) auf CodePen.
Verwendung - html
<span><span><span><ul</span> id<span>="images"</span>></span> </span> <span><span><span><li</span>></span> </span> <span><span><span><a</span> href<span>="https://www.pexels.com/photo/mist-misty-fog-foggy-7919/"</span>></span> </span> <span><span><span><img</span> src<span>="https://pexels.imgix.net/photos/7919/pexels-photo.jpg?fit=crop&w=640&h=480"</span> alt<span>=""</span> /></span> </span> <span><span><span></a</span>></span> </span> <span><span><span></li</span>></span> </span> … <span><span><span></ul</span>></span></span>
<span>$(document).ready(function() { </span> <span>$(window).endlessScroll({ </span> <span>inflowPixels: 300, </span> <span>callback: function() { </span> <span>var $img = $('#images li:nth-last-child(5)').clone(); </span> <span>$('#images').append($img); </span> <span>} </span> <span>}); </span><span>});</span>
Diese Demo verwendet dieselbe Technik wie Demo 2, um festzustellen, wann der Benutzer das Ende des Dokuments erreicht hat, nicht nur vertikal, sondern auch horizontal. Jedes Mal, wenn ein Ende erreicht ist, fügen wir der Tabelle eine neue Zeile oder eine neue Spalte hinzu. Es ist genau die Art von Skript, die wir schreiben könnten, wenn wir eine Tabellenkalkulationsanwendung erstellen möchten.
Beachten Sie, dass alle Zellen leer sind. Die Zeilen und Spaltenindizes werden mit CSS -Zählern generiert, damit wir sie nicht selbst berechnen müssen.
Siehe die Stift -Infinite -Tabellenkalkulationen von sitepoint (@sinepoint) auf CodePen.
Verwendung - html
<span><span><span><ul</span> id<span>="numbers"</span>></span> </span> <span><span><span><li</span>></span>1<span><span></li</span>></span> </span> <span><span><span><li</span>></span>2<span><span></li</span>></span> </span> <span><span><span><li</span>></span>3<span><span></li</span>></span> </span> <span><span><span><li</span>></span>4<span><span></li</span>></span> </span> <span><span><span><li</span>></span>5<span><span></li</span>></span> </span> … <span><span><span></ul</span>></span></span>
<span>$(document).ready(function() { </span> <span>var offset = $('#numbers li').length; </span> <span>$('#numbers').endlessScroll({ </span> <span>fireOnce: false, </span> <span>fireDelay: false, </span> <span>loader: '', </span> <span>insertAfter: '#numbers li:last', </span> <span>content: function(i) { </span> <span>return '<li>' + (i + offset) + '</li>'; </span> <span>} </span> <span>}); </span><span>});</span>
Es gibt Nachteile gegen unendliches Bildlauf: Wenn es nicht gut implementiert ist, kann die Benutzererfahrung unterbrochen werden. Wenn Sie den Benutzer eine unendliche Liste laden lassen, können sie nach einer Weile ihren Platz verlieren. Das ist eine Sache, die sich niemals mit einem traditionellen Paginationssystem angemeldet. Pagination erfordert jedoch Aktionen des Benutzer
Diese beiden Fakten gaben Tim Severien eine Idee: Was wäre, wenn wir unendlich Scrollen und Pagination kombinieren, um beide Methoden zu nutzen? Das Ergebnis ist diese letzte Demo.
Eine Anfangsseite wird dem Benutzer angezeigt. Wenn der Benutzer nach unten scrollt und den unteren Teil der Seite erreicht, wird automatisch eine neue Seite geladen. Hier genießen wir die Einfachheit durch unendliche Scrollen. Aber die neuen Dinge stammen aus einer Liste, die am Ende des Bildschirms festgelegt ist.
ursprünglich versteckt, diese Liste wird mit der Anzahl dieser Seite jedes Mal gefüllt, wenn eine neue Seite geladen wird. Auf diese Weise kann der Benutzer die zweite Seite abrufen, wenn er auf die entsprechende Nummer auf die entsprechende Nummer aufnimmt.
Siehe den Stift Infinite Scroll Pagination von SitePoint (@sinepoint) auf CodePen.
Verwendung - html
<span><span><span><div</span> class<span>="grid"</span>></span> </span> <span><span><span><div</span> class<span>="grid-item grid-item-2"</span>></span> </span> <span><span><span><p</span>></span>content<span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> … <span><span><span></div</span>></span> </span> <span><!-- The next page which content will be loaded when scrolled --> </span><span><span><span><nav</span> id<span>="pagination"</span>></span> </span> <span><span><span><p</span>></span><span><span><a</span> href<span>="page-2.html"</span>></span>Page 2<span><span></a</span>></span><span><span></p</span>></span> </span><span><span><span></nav</span>></span></span>
Verwendung - JavaScript
Bitte beachten Sie, dass dieser Code ES6 verwendet, aber Sie können ihn problemlos in ES5 konvertieren.
<span>$(document).ready(function() { </span> <span>var grid = $('.grid'); </span> grid<span>.masonry({ </span> <span>itemSelector: '.grid-item', </span> <span>columnWidth: 200 </span> <span>}); </span> grid<span>.infinitescroll({ </span> <span>// Pagination element that will be hidden </span> <span>navSelector: '#pagination', </span> <span>// Next page link </span> <span>nextSelector: '#pagination p a', </span> <span>// Selector of items to retrieve </span> <span>itemSelector: '.grid-item', </span> <span>// Loading message </span> <span>loadingText: 'Loading new items…' </span> <span>}, </span> <span>// Function called once the elements are retrieved </span> <span>function(new_elts) { </span> <span>var elts = $(new_elts).css('opacity', 0); </span> elts<span>.animate({opacity: 1}); </span> grid<span>.masonry('appended', elts); </span> <span>}); </span><span>});</span>
Schlussfolgerung
Wir haben sechs verschiedene Beispiele für die Implementierung von unendlichem Scrollen angesehen. Unabhängig davon, was Sie aufbauen möchten, sollten Sie in der Lage sein, eine dieser Techniken zu verwenden, um das gewünschte Ergebnis zu erzielen. Wie immer würden wir gerne Ihre Gedanken hören: Haben Sie mit einer dieser Plugins oder Techniken etwas Cooles aufgebaut? Haben Sie ein Lieblings -Plugin, von dem Sie denkt, dass sie hätte erwähnt werden sollen? Lassen Sie uns in den Kommentaren wissen!
häufig gestellte Fragen (FAQs) zu jQuery Infinite Scrolling
Wie kann ich JQuery Infinite Scrolling auf meiner Website implementieren? Zunächst müssen Sie die JQuery -Bibliothek und das Infinite Scroll -Plugin in Ihre HTML -Datei aufnehmen. Anschließend müssen Sie das Plugin initialisieren und den Inhalt angeben, den Sie unendlich laden möchten. Sie können dies tun, indem Sie die Option "ItemSelector" verwenden und auf die Klasse oder ID Ihres Inhalts verweisen. Schließlich müssen Sie den Pfad zum nächsten Inhaltssatz mit der Pfadoption angeben. Dies kann eine URL oder eine Funktion sein, die eine URL zurückgibt. Es verbessert die Benutzererfahrung, indem Benutzer inhaltlich durchsuchen können, ohne auf Pagination -Links klicken zu müssen. Es reduziert auch die Serverlast, da der Inhalt nur dann geladen wird, wenn er benötigt wird. Darüber hinaus kann es das Engagement und die Zeit erhöhen, die auf Ihrer Website aufgewendet werden, da Benutzer eher weiterhin scrollen und Ihre Inhalte erforschen. Sie können die Ladenachricht in JQuery Infinite Scrolling anpassen. Das Plugin bietet eine Option mit dem Namen Lade, mit der Sie den Text und die Bilder angeben können, während der Inhalt geladen wird. Sie können auch CSS verwenden, um die Ladenachricht zu stylen.
Wie kann ich Fehler in JQuery Infinite Scrolling umgehen? Diese Funktion wird aufgerufen, wenn das Plugin den Inhalt nicht lädt. Sie können diesen Rückruf verwenden, um eine Fehlermeldung anzuzeigen oder andere Aktionen zu ergreifen. Das Plugin bietet eine Methode namens INFSCR ('Bind'), die Sie aufrufen können, um die unendliche Bildlauffunktion an neu geladene Inhalte zu binden.
Sie können JQuery Infinite Scrolling stoppen, wenn kein Inhalt mehr vorhanden ist, indem Sie die InfsCR -Methode aufrufen. Dadurch werden die unendliche Bildlauffunktionalität entfernt und verhindern, dass weitere Inhalte geladen werden. . Sie müssen jedoch sicherstellen, dass die anderen Plugins mit unendlichem Scrollen kompatibel sind und ihre Funktionalität nicht beeinträchtigen. Durch Scrollen Ihrer Seite und überprüfen Sie, ob neue Inhalte geladen werden. Sie können auch Browser -Entwickler -Tools verwenden, um Netzwerkanforderungen zu überwachen und zu überprüfen, ob neue Inhalte korrekt angefordert und geladen werden. Funktioniert auf mobilen Geräten. Sie müssen jedoch sicherstellen, dass Ihre Website reagiert und dass die unendliche Bildlauffunktion in verschiedenen Bildschirmgrößen gut funktioniert. Die Leistung von Jquery Infinite Scrolling durch Optimierung Ihrer Inhalte. Dies beinhaltet die Reduzierung der Größe Ihrer Bilder, das Minimieren Ihrer CSS- und JavaScript-Dateien und die Verwendung der serverseitigen Pagination, um die Menge an Inhaltsaufnahme auf einmal zu begrenzen. Sie können auch Lazy Loading verwenden, um nur Bilder zu laden, wenn sie sich im Ansichtsfenster befinden.Das obige ist der detaillierte Inhalt von6 JQuery Infinite Scrolling Demos. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

Zu den Hauptanwendungen von JavaScript in der Webentwicklung gehören die Interaktion der Clients, die Formüberprüfung und die asynchrone Kommunikation. 1) Dynamisches Inhaltsaktualisierung und Benutzerinteraktion durch DOM -Operationen; 2) Die Kundenüberprüfung erfolgt vor dem Einreichung von Daten, um die Benutzererfahrung zu verbessern. 3) Die Aktualisierung der Kommunikation mit dem Server wird durch AJAX -Technologie erreicht.

Die Anwendung von JavaScript in der realen Welt umfasst Front-End- und Back-End-Entwicklung. 1) Zeigen Sie Front-End-Anwendungen an, indem Sie eine TODO-Listanwendung erstellen, die DOM-Operationen und Ereignisverarbeitung umfasst. 2) Erstellen Sie RESTFUFFUPI über Node.js und express, um Back-End-Anwendungen zu demonstrieren.

Es ist für Entwickler wichtig, zu verstehen, wie die JavaScript -Engine intern funktioniert, da sie effizientere Code schreibt und Leistungs Engpässe und Optimierungsstrategien verstehen kann. 1) Der Workflow der Engine umfasst drei Phasen: Parsen, Kompilieren und Ausführung; 2) Während des Ausführungsprozesses führt die Engine dynamische Optimierung durch, wie z. B. Inline -Cache und versteckte Klassen. 3) Zu Best Practices gehören die Vermeidung globaler Variablen, die Optimierung von Schleifen, die Verwendung von const und lass und die Vermeidung übermäßiger Verwendung von Schließungen.

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Sowohl Python als auch JavaScripts Entscheidungen in Entwicklungsumgebungen sind wichtig. 1) Die Entwicklungsumgebung von Python umfasst Pycharm, Jupyternotebook und Anaconda, die für Datenwissenschaft und schnelles Prototyping geeignet sind. 2) Die Entwicklungsumgebung von JavaScript umfasst Node.JS, VSCODE und WebPack, die für die Entwicklung von Front-End- und Back-End-Entwicklung geeignet sind. Durch die Auswahl der richtigen Tools nach den Projektbedürfnissen kann die Entwicklung der Entwicklung und die Erfolgsquote der Projekte verbessert werden.

C und C spielen eine wichtige Rolle in der JavaScript -Engine, die hauptsächlich zur Implementierung von Dolmetschern und JIT -Compilern verwendet wird. 1) C wird verwendet, um JavaScript -Quellcode zu analysieren und einen abstrakten Syntaxbaum zu generieren. 2) C ist für die Generierung und Ausführung von Bytecode verantwortlich. 3) C implementiert den JIT-Compiler, optimiert und kompiliert Hot-Spot-Code zur Laufzeit und verbessert die Ausführungseffizienz von JavaScript erheblich.

JavaScript wird in Websites, mobilen Anwendungen, Desktop-Anwendungen und serverseitigen Programmierungen häufig verwendet. 1) In der Website -Entwicklung betreibt JavaScript DOM zusammen mit HTML und CSS, um dynamische Effekte zu erzielen und Frameworks wie JQuery und React zu unterstützen. 2) Durch reaktnatives und ionisches JavaScript wird ein plattformübergreifendes mobile Anwendungen entwickelt. 3) Mit dem Elektronenframework können JavaScript Desktop -Anwendungen erstellen. 4) Node.js ermöglicht es JavaScript, auf der Serverseite auszuführen und unterstützt hohe gleichzeitige Anforderungen.
