Hallo Ulrike,
auch wenn der Thread schon etwas älter ist, es gab ja zwischenzeitlich mal ein Update. Mir ist jetzt allerdings noch etwas aufgefallen, vielleicht weißt du da besser bescheid. Ich spiel jetzt schon ewig an der scrollbar_config rum, aber irgendwie klappt das nicht, was ich möchte.
Hier das, was ich meine:
Egal wieviel Text in dem Scrollpane enthalten ist, ob es nur ein bisschen "versteckt" oder - wie bei mir aktuell, ungefähr der 20-fache Inhalt das aktuellen Fensters zu sehen ist. Es sind immer genau 4 Steps die das Scrollpane macht. Wenn ich es mit dem Mausrad scrolle. Bedeutet natürlich, dass bei einem Scrollvorgang gleichmal einige Seiten übersprungen werden. Leider gibt es in der Config nirgendwo einen Hinweis auf diese "Steps".
Hoffe ich hab das irgendwie verständlich beschrieben.
Bei einem Inhalt, bei dem z.B. vielleicht nur 2 Zeilen fehlen, müsste ein normaler Scroller ja normal mit dem 1 Step fertig sein, da er direkt die letzte Zeile darstellt und oben die erste Zeile nach oben durchschiebt. Auch hier versuht Scrollpane wiederrum 4 Steps zu machen. Ich muss mit der Maus also 4 Schritt auf dem Mausrad hinterlegen um die letzte Zeile zu sehen. Ich denke da ist irgendeine hardcodierte Lösung hinterlegt.
Sinnvoll wäre es doch eigentlich, mal logisch ausgedrückt steps = "gesamthöhe/breite Fensterinhalt" / "Definierte Fensterhöhe/breite"
In Zahlen:
Bei viel Inhalt
2500px / 450px = 5,55~ Steps.. also gerundet 6 Steps
Bei wenig Inhalt
600px / 450px = 1,33~ Steps... also gerundet 1 Step.
So wäre es auch logisch und würde auch dem üblichen Scrollen entsprechen.
Wäre echt Klasse, wenn du da mal schauen könntest wo diese komischen hardcodet '4' Schritte definiert werden.
Vielen Dank schonmal
Gruß
Michael
Ach ja, weil ich grad dabei bin. Hier noch eine kleine Verbesserung für den Scrollpane, weil ich weiterhin das Problem habe mit iPhone/iPad etc. zu scrollen.
Mit dieser kleinen Änderung geht es jedoch wunderbar. Code der dazu sollte, ist fett gemacht
ScrollpaneStart.php
Code:
protected function compile() {
if (TL_MODE=='FE') {
if(!$this->Environment->agent->mobile):
if(version_compare(VERSION . '.' . BUILD, '2.11.0', '<')) {
$GLOBALS['TL_JAVASCRIPT'][] = 'plugins/scrollpane/js/mootools-1.2.5.1-more-yui.js';
} else $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/scrollpane/js/mootools-1.4.0.1-more-yui.js';
$GLOBALS['TL_JAVASCRIPT'][] = 'plugins/scrollpane/js/scrollbar-1.0.1-nc.js';
$GLOBALS['TL_CSS'][] = 'system/modules/scrollpane/html/css/scrollpane.css';
$GLOBALS['TL_JAVASCRIPT'][] = 'system/modules/scrollpane/html/js/scrollbar_config_src.js';
endif;
$this->strTemplate = 'ce_scrollpane_start';
$this->Template = new FrontendTemplate($this->strTemplate);
$this->Template->id = $this->id;
$settings=deserialize($this->paneSize);
$this->Template->width = $settings[0];
$this->Template->height = $settings[1];
$this->Template->orientation = $settings[2];
if($this->Environment->agent->mobile) $this->Template->orientation .= ' mobile';
und in der CSS Datei
Code:
.scroller.mobile {overflow: scroll;}
Das hat lediglich zur Folge, dass die Javascript auf mobilen Geräte nicht geladen wird und stattdessen die Scrollfunktion des Gerät genutzt wird.