Infinite Scroll / Automatische nachladende Listen

Ich finde das Modul auch klasse. Was ich jedoch etwas doof finde: Wenn man sich den footer anschauen möchte, dann ist man gezwungen erst alle Artikel laden zu lassen. :stuck_out_tongue:

na den Footer kannst du anschauen, wenn du auf die Startseite kommst oder Impressum liest oder auch später im Warenkorb bist.

ich plane da eh eine Erweiterung mit der sich einstellen lässt wie viele Seiten geladen werden - dann kommt ein “weiter zur nächsten Seite” Button damit der Browser nicht bei zu vielen Artikeln die Grätsche macht.

Servus zusammen,

hab mir das Ding jetzt auch ohne Modul für meine Seite eingebaut. Allerdings werden die Seiten doppelt geladen, wenn man direkt über den Locator auf bspw. http://www.meinestruempfe.de/Damen/Strumpfmode/2/ einsteigt. Jemand eine Idee, wie sich das verhindern lässt?

So funktioniert das Ganze nun:


[{assign var="pageNavigation" value=$oView->getPageNavigation()}]
[{assign var="actCategory" value=$oView->getActiveCategory()}]

[{if $oView->getClassName() eq "alist" || $oView->getClassName() eq "search" || $oView->getClassName() eq "manufacturerlist" }]
    
    [{capture assign=infiniteScroll}]
		
		$(function(){
        var productlistselector = '#productlist';
        $(productlistselector).infinitescroll({
            navSelector  : "div.pagination",
            nextSelector : "div.pagination a.next",
            itemSelector : productlistselector + " .product",
            maxPage: [{$pageNavigation->NrOfPages}],
            state: {
            	currPage: [{if $pageNavigation->actPage}][{$pageNavigation->actPage}][{else}]1[{/if}]
						},
						pathParse: function() {
				      return ['[{$actCategory->getLink()}]','/']
				    },						
            debug: false,
            loading: {
                msgText: '',
                finishedMsg: '',
	            	img : "/out/meine_struempfe/img/ajax-loader.gif",
                finished: function(){
                    $('#infscr-loading').remove();
                    initListBubbles();
                    $('div.pagination').show();
                }
            }
        });
			})
    [{/capture}]
    [{oxscript add=$infiniteScroll}]
 [{/if}]


Kleiner Nachtrag! Das Ding funktioniert so nicht in der Suche… Wahrscheinlich, weil Active Category nicht definiert ist…

… und [U]wo[/U] hast Du das eingebaut? :confused:

in seinen Shop? :slight_smile:

Danke Dir Chris fürs Teilen!

bin über die langbeinigen Models auch schon mehrmals hoch und runter gescrollt :slight_smile:

was ich nicht verstanden habe ist wo bzw wie das template eingebaut wurde …

Entschuldigung - war noch zu verwirrt vom scrollen und habe meine Frage sehr unpräzise gestellt :slight_smile:

Ja, büdde! In der list_locator.tpl ganz oben… So, Frage beantwortet?

Hallo Chris,
was ich aber nicht verstehe warum wird bei dir pager (1, 2, 3 =>) Angezeigt nachdem das Modul Produktliste vollständig geladen und Liste beendet hat. Das ist sehr verwirrend, gibts es Produkte in Seite 2 oder 3 die das Modul nicht laden kann?

Grüße
Rafig

Nein, die gibt es nicht. Das Problem wäre eher, was passiert, wenn man von der Detailansicht zurück auf die Listenansicht wechselt. Da wäre es dann sinnvoller, wenn man wiederum auf die komplette Listenansicht kommt. Allerdings wirkt sich das auch noch auf den Filter aus, da dieser immer nur alle Elemente einer Seite durchforstet und man somit nie die Möglichkeit hat, Produkte von Seite 2 zu finden…

OK. Aber nicht gut gelöst, wie gesagt sehr verwirrend.

Wenn ich die Seite runterscrolle und Produktliste ist beendet trotzdem sehe ich (als Kunde) das noch 3 weitere Seiten verfügbar sind, klicke ich halt drauf was sonst.

Grüße
Rafig

Hi,
ein berechtigter Einwand, wie ich finde.

In Vanilla Thunder´s Modul wurde der untere Pager entfernt, nur noch der obere ist vorhanden. Wenn man noch nicht gescrollt hat, kann man oben umblättern, wenn man schon runtergescrollt hat, nicht mehr.

Das ist doch eine gute Lösung.

@coarsy - Danke!

Da ich in manchen Kategorien auch schon mal über 100 Artikel habe, will ich das Nachladen auf 3 Seiten begrenzen und dann nur unten einen Button einblenden: “weitere Artikel”. Beim Anklicken kommt die nächste Seite usw.

Die Navi-Leiste unten würde ich - wie hier schon besprochen - ausblenden, da sie nur verwirrt.

Servus :slight_smile:

Nix zu Danken. Ich habe jetzt die Sache wieder eingebaut. War ne falsche Info bezüglich dem Produktfilter, der filtert wirklich über sämtliche Artikel. Pro Seite werden jetzt 40 Artikel angezeigt. Würdet Ihr das noch weiter nach unten setzen?

Ach ja, die Pagination habe ich jetzt einfach über JavaScript ausgeblendet… Bitte mal kurz testen, ob man damit klar kommt.

Zu dem Thema, man könnte sowas hier machen:

http://travisisaacs.com/2008/02/24/improving-on-infinite-scrolling/

auch interessant:

http://tumbledry.org/2011/05/12/screw_hashbangs_building

Man könnte da noch einen Haufen verbessern, muss nur einer mal machen :smiley:

Coarsy,
Du hast Ihn aber jetzt komplett entfernt, oder?

Grüße
Rafig

Ne, war nur vorübergehend, ich hatte ein Problem mit dem Produktfilter… Jetzt isses drin, es werden immer 40 Artikel nachgeladen. Eventuell mache ich 24 draus, mal sehen. Die Lösung war doch etwas komplizierter, ich musste das Script parametrisieren und entsprechend nach jedem Reload usw. neu die Werte via JavaScript setzen, damit das Ding net ausm Ruder läuft :slight_smile:

Wie findet Ihr das eigentlich von der rechtlichen Seite her? Man kommt ja nie an den Footer um das Impressum einsehen zu können… Allerdings kann man das Impressum auch ganz nach oben setzen.

Was ist eigentlich, wenn ein User einen Bookmark auf die Seite setzen möchte etc… Ansonsten find ichs halt vom Feeling her ziemlich geil, es macht Spaß, auf Shops mit Infinite Scroll zu surfen… Hab mal im Bekanntenkreis sone kleine Umfrage gestartet und alle findens klasse, gerade die Laptopsurfer ohne Maus :slight_smile:

[QUOTE=coarsy;127362]
Wie findet Ihr das eigentlich von der rechtlichen Seite her? Man kommt ja nie an den Footer um das Impressum einsehen zu können… [/QUOTE]

Warum das denn? Man kann doch jederzeit ganz nach unten scrollen, dann ist man doch beim Footer.