Es ist mal wieder Zeit, nichts weniger als einen Paradigmenwechsel auszurufen! Wir sind es gewohnt, dass auch Webseiten in ihren Abmessungen endlich sind. Ganz so, als hätte eine Webseite endliche Maße, als wäre sie eine Seite aus einem Buch oder einer Zeitung.
Manchmal möchte man aber mehr anbieten, als auf eine Seite passt. Als das Web noch jung war, erfanden deshalb schlaue Leute die Paginierung. Eine nach Ladezeit und subjektiver Einschätzung der Aufnahmefähigkeit der Zielgruppe dosierte Menge an Informationen wird auf eine Seite gepackt, am Fuß der Seite geben Ziffern als Link auf weitere Seiten einen Eindruck von der Menge, die noch auf den Betrachter wartet. Das wohlbekannte und klassische Beispiel für paginierte Webseiten sind Suchergebnisseiten einer Suchmaschine oder das Archiv eines Weblogs. Dieses Muster wird heute praktisch überall verwendet, wo die Informationsmenge den selbst gewählten Seitenrahmen sprengt.
Aber warum muss eine Seite im Web überhaupt begrenzt sein? Und warum soll ich eine neue Seite aufrufen, wenn ich eigentlich nur mehr Suchergebnisse oder Weblogeinträge sehen will?

Dachten sich die Jungs von Unspace und formulierten das »Endless Pageless«-Pattern. Statt Paginierungslinks einzusetzen, lädt eine Seite selbstständig neue Elemente nach, wenn der oder die Betrachtende das untere Ende der Seite im Browser erreicht hat. Um das zu erreichen, wird »Ajax«-Magie eingesetzt, welche die Position auf der Seite auswertet, hinter den Kulissen neuen Stoff nachlädt und diese neuen Elemente dann an das untere Ende der bereits im Browser befindlichen Seite hängt. Das klingt komplizierter, als es in der Anwendung ist.
Als erste »richtige« Website im Massenbetrieb hat der Tumblelog-Anbieter »soup.io« dieses Muster sehr schön umgesetzt. Die Tumblelogs dort enthalten keine Paginierung mehr, was zum modernen Verständnis einer Webseite als eine Webanwendung, als einem stetigen Fluss von Elementen, besser passt als Paginierungen. Die Seite im Browser ist keine statische Seite mehr, sie ist ein Fluss von Informationen, der Informationen nachschüttet, bis die Quelle ausgetrocknet ist.
Es ist an der Zeit, sich von der klassischen Seite zu lösen und in Anwendungen zu denken. Eine Website ist ein Fluss!
Ralf Graf verdient seit 12 Jahren seine Brötchen mit dem Web. Er lebt und arbeitet in Karlsruhe als freier Webentwickler. Weil er zu faul zum Frickeln ist, setzt er auf Webstandards und Ruby On Rails.
Dies ist ein Text zur Aktion Sonnenseiten: Webkrauts loben – höchst subjektiv – einzelne Details von Webseiten. Entgegen unserer Gewohnheit steht diesmal nicht der Quelltext, sondern die Idee im Mittelpunkt.
Bitte die Hausregeln beachten. Alle Kommentare werden auf werbliche Links/Nicknames geprüft und gegebenenfalls gelöscht.
Kommentar-Feed für diesen Beitrag
Entschuldige, das Kommentarformular ist zurzeit geschlossen.
Der Google Reader macht das auch bereits.
Kommentar by Ewald Natter - 24. Juli 2008 um 09:31
Wenn man dieses System nutzt, dann sollte man aber auch eine Alternative für Nutzer ohne Javascript ("Sicherheitfanatiker", Screenreader, Suchmaschinen) bereithalten, oder?
Kommentar by Torsten - 24. Juli 2008 um 10:18
Die Idee gabs schon Anfang 2006 von den Humanized-Jungs.
Die Idee ist aber richtig gut, für JavaScript-Ausschalter kann man ja die normale Paginierung verwenden.
LG
Kommentar by knub - 24. Juli 2008 um 11:29
Bei soup.io funktioniert die Endless Page wirklich hervorragend, schick sonnige Seite ausgewählt!
Doch geht das Plugin bei vielen anderen Seiten – bei denen ein endloses Scrollen intuitiv erst einmal Sinn machen würde – mit einigen Usability-Abstrichen einher: Footerproblematik, Druck der Seite, schnelles Springen direkt über die Scrollbar, die essentiell notwendige fixe Ladegeschwindigkeit, plus das Zucken der Scrollbar beim Scrollen, das einige Nutzer durchaus irritieren könnte. Ein »Inspirieren-lassen« sollte wohl überlegt werden.
Kommentar by Julia - 24. Juli 2008 um 11:36
Prinzipiell finde ich diese Funktionsweise auch recht angenehm (z.B. wie oben schon erwähnt beim Google Reader). Allerdings habe ich bei der klassischen Paginierung den Vorteil, daß ich in etwa abschätzen kann, wieviele Ergebnisse auf mich zukommen. Beim dynamischen Scrollen, kann ich ewig(?) scrollen und weiß nicht, wann das Ende erreicht ist…
Ich denke die Mischung aus beidem machts.
Kommentar by Ole - 24. Juli 2008 um 12:06
Thema "JavaScript für Clients ohne JS" – Man könnte z.B. die Paginierungslinks für Clients ohne JavaScript ausgeben und dann per JS wieder entfernen. soup.io macht da derzeit gar nix, weiterblättern geht nur mit JS.
Aber da werden wir, wenn das Pattern öfter eingesetzt wird, sicher noch interessante Lösungen sehen.
Thema "Drucken" – Sehe ich kein Problem, wer druckt Suchergebnisse, ein Tumblelog oder ein Blogarchiv aus? Und der Einwand ist für meinen Geschmack zu nahe am "Eine Website ist eine gedruckte Seite die nur noch nicht ausgedruckt wurde"-Denken.
Thema "Anzahl der Suchergebnisse" – Okay, ist bis zu einem Punkt ein potenzieller Informationsverlsut, ab einer gewissen Menge an Informationen ist es aber egal, ob ich weiß, dass es noch 237 weitere Seiten geben würde.
Kommentar by Ralf Graf - 25. Juli 2008 um 09:13
@Ralf: Der eigene Kosmos wirft die Drucken-ist-schwierig-Mäkelei. Wir hatten überlegt, die Endless Page bei unserem kleinen Tool im Reportsbereich einzubauen – dort wollen tatsächlich viele drucken.
Kommentar by Julia - 25. Juli 2008 um 10:56
@Julia Na klar, das ist ja auch in der Tat ne typische Druck-Anwendung, so ein Report, kann ich verstehen, dass es Endless-Pageless da nicht passt.
Wie bei alle Werkzeugen muss man beim Einsatzzweck checken, ob es sinnvoll ist, und gerade für Archive und Suchergebnisse (oder eben ein Tumbler) ist es IMHO ideal, weil in dem Fall die Seitenbegrenzung sowieso künstlich ist.
Kommentar by Ralf Graf - 25. Juli 2008 um 12:45
Danke für die nette Erwähnung!
@Ralf: Auf einzelnen Soups gibt es ein Fallback auf normale Blätter-Links, wenn JavaScript ausgeschalten ist — nur auf unserer Startseite derzeit nicht.
Erwähnenswert wäre auch AutoPagerize, ein aus Japan kommendes Greasemonkey-Userscript, das Endless Scrolling für über 700 Seiten clientseitig umsetzt.
Kommentar by Christopher Clay - 26. Juli 2008 um 19:16
Also ich finde diese Möglichkeit zwar ganz interessant, aber was wenn man eben gerne die ältesten Beiträge lesen möchte oder die vor ungefähr 2 Wochen, weil man sich erinnert, dass dort ein interessanter Artikel stand. Bevor man wieder an diesen Artikel gelangt vergeht mir viel zu viel Zeit. Ich empfinde dieses "Feature" letztlich als eher nervig. *Sorry*
Kommentar by Matthias - 29. Juli 2008 um 08:46
@Matthias: Such-/Filter-Funktionen werden wohl weiterhin bestehen.
Wie machst du das denn wenn sich die Seitenzahlen ändern weil das Archiv "wächst"? Dazu kommt noch das scrollen und nachladen von Inhalten per AJAX, teilweise schneller geht als das laden einer neuen Seite mit Hilfe der Blätter-Funktion.
Ehrlich gesagt fände ich es noch nichtmal schlimm wenn hier auf die Blätterfunktion komplett verzichtet würde. Wer heutzutage ohne JavaScript unterwegs ist hinkt meiner Meinung nach sowieso der Zeit hinterher. Dazu zählen für mich auch Screenreader und Suchmaschinen…
Zumindest verpasst man doch so das Beste vom Web… oder?
Kommentar by Fabz - 18. September 2008 um 15:15