Hat schon mal jemand eine Funktion gebaut, wo die Artikelliste automatisch nachlädt b zw. sich verlängert, wenn man am Seitenende anstößt.
So wie bei Facebook!
Oder habt ihr schon mal einen Oxid-Shop gesehen der das integriert hat?
Vielleicht gibt es sogar ein fertiges Template zu kaufen?
[QUOTE=Egoist;50968]Hat schon mal jemand eine Funktion gebaut, wo die Artikelliste automatisch nachlädt b zw. sich verlängert, wenn man am Seitenende anstößt.
So wie bei Facebook!
Oder habt ihr schon mal einen Oxid-Shop gesehen der das integriert hat?
Vielleicht gibt es sogar ein fertiges Template zu kaufen?
Ich konnte leider bisher nix finden.[/QUOTE]
Mit einem kleinen Modul (ich vermute nicht mehr als 4-5 Zeilen) und einer Ajax-Lösung (per jQuery keine Zauberei) sollte das durchaus unkompliziert zu lösen sein. Fertig habe ich das jedoch bislang nicht gesehen.
sollte wirklich nicht so schwer sein, denn die Seitenweise Anzeige kann man ja mit JQuery einfach ausblenden, sobald dann der User das Seitenende erreicht, schieße ich einen Request auf die nächsteSeite ab und appende das HTML Gedöns dann ans bereits bestehende HTML, zumindest stelle ich mir das genau so vor.
Hätte zumindest den Vorteil, dass man kein weiteres Modul mehr benötigt, ich werds demnächst mal ausprobieren.
habe mich jetzt gerade mal an den Versuch gewagt das umzusetzen und hab die Anzahl der Artikel pro Seite mal auf 2 gestellt, damit ich den Locator eingeblendet bekomme, erhalte jetzt folgende Fehlermeldung:
Die angeforderte Seite 'kat/unterkat/2/' konnte nicht gefunden werden.
Hi Ray, absoluter Pfad mit http:// usw. davor.
Wenn man allerdings sich durch die Artikel Pagination blättert und
danach nochmal die Listen Pagination probiert, dann funktionierts plötzlich.
es gibt kein spezielles Event hierfür. Du musst berechnen, wieviel Platz die komplette Seite einnimmt und dann sobal der Schwellenwert erreicht ist, den AJAX-Request abfeuern.
Die oben beschriebene Möglichkeit dürfte ziemlich schnell umzusetzen sein, sauberer und schöner fände ich eine Lösung mit JSON, welche mir wirklich nur die benötigten HTML Fetzen zurückliefert.
$(document).ready(function()
{
initEvents();
});
/* Init basic events and effects */
function initEvents()
{
initListLoad();
}
function initListLoad() {
$(".lochead").hide();
var completeHeight = $(document).height();
var viewportHeight = $(window).height()
$(window).scroll(function() {
var scrollTop = $(this).scrollTop();
var diff = completeHeight - scrollTop;
if (diff <= viewportHeight)
getNextPage();
});
}
function getNextPage(){
var nextLink = $("a#test_NextPageBottom").attr("href");
var nextLinkClass = "a#test_NextPageBottom";
var thisList = $("#productlist");
if (nextLink != "#") {
thisList.append("<div class=\"loading\">loading</div>");
$.ajax({
url: nextLink,
context: document.body,
success: function(result){
thisList.append($(result).find("#productlist").html());
if ($(result).find(nextLinkClass).attr("href") == undefined)
$(nextLinkClass).attr("href", "#");
else
$(nextLinkClass).attr("href", $(result).find(nextLinkClass).attr("href"));
},
complete: function() { $(".loading").remove(); }
});
}
}
Das jetzt mal auf die Schnelle, habe allerdings immer noch das Problem, dass die Pagination nur funktioniert,
wenn man sich einmal durch die ganzen Artikel in der Detailansicht gehangelt hat, warum denn das?
Wäre schön, wenn mir da jemand auf die Sprünge helfen könnte.
Der Fehler tritt übrigens auch im original Template auf, Shopversion 4.4.6 und scheint nur ungerade Zahlen wie 1, 3 usw. zu betreffen.