| 

.NET C# Java Javascript Exception

2
Hallo,
ich arbeite an einer SPA (Single-Page-Application) in der sehr große Datenmengen betrachtet werden können.
In einer Maske wird eine Tabelle angezeigt, die durchaus mehrere Millionen Zeilen haben kann. Bisher haben wir hier zur Navigation auf die Paginierung zurückgegriffen. Wir haben auch schon mit einer selbstgeschriebenen Scrollbar gearbeitet, die immer nur den Teil der Tabelle per AJAX nachlädt, der gerade angezeigt wird. Letzteres ist jetzt aber für die Touch-Bedienung nicht sehr vorteilhaft. Filter setzen wir auch ein, aber die taugen meiner Meinung nach nicht als Hauptnavigationsmittel. Jetzt wollte ich hier mal fragen, ob es denn Alternativen zur Paginierung und zu Scrollbars bei sehr langem Content gibt und wenn ja, welche?
News:
19.03.2014
Smartin 35 5
1 Antwort
0
Hm, für mich liest sich das nach einem Vergleich von Äpfeln und Birnen. Während Scrollbars ein Hilfsmittel zur Bedienung sind, ist Paginierung ein Verfahren zur Aufteilung von Content auf mehrere Seiten - das seinerseits prinzipiell über verschiedene Wege bedient werden kann. Neben den "klassischen" Vorwärts-/Rückwärts-/Seitennummer-Links sieht man in letzter Zeit z.B. auch Wisch-Ansätze, bei denen man die aktuelle Seite nach links oder rechts "schiebt", um zur nächsten oder vorherigen zu kommen.

Wenn Du Paginierung nicht verwenden willst, dann solltest Du auf jeden Fall auf Virtualisierung achten, d.h. es werden nur die Zeilen und Spalten der Tabelle tatsächlich in den DOM gerendert, die gerade zu sehen sind (plus ein kleiner Puffer oben und unten für flüssiges Scrolling). Ein sehr leistungsfähiges Tabellen-Control, das das beherrscht und auch mit dynamischem Nachladen klarkommt, ist SlickGrid. Da Du angular in den Tags stehen hast, solltest Du Dir auch ng-grid ansehen. Bei einem solchen Ansatz muß der Benutzer natürlich scrollen, aber das heißt nicht zwangsläufig, dass Du (ausschließlich) Scrollbars verwenden mußt. Du kannst genausogut auch Wischgesten entsprechend verdrahten, so dass sie die entsprechenden Events auslösen. SlickGrid unterstützt das nicht von Haus aus, aber nach kurzem Googlen sieht es für mich so aus, als ob Dir http://de.slideshare.net/reebalazs/slickgrid-touch-making-complex-javascript-widgets-work-on-mobile-devices und https://github.com/reebalazs/SlickGrid-touch zumindest den Weg weisen könnten, wie es gehen könnte.
22.03.2014
Matthias Hlawatsch 13,2k 4 9

Stelle deine Scrollbar-Frage jetzt!