Wie man den Inhalt hoch und runter schieben kann, meist Du?
Wenn ich das richtig sehe, liegt der komplette Inhalt in einem DIV, das per overflow:hidden vom umschließenden Container verdeckt wird. Wenn Du dem Inhalts-DIV einen negativen Margin gibst, sollte es nach oben "rutschen" und der verdeckte Inhalt unten entsprechend sichtbar und oben unsichtbar werden. Je nach Positionierung kann dafür das Attribut "position" sinnvoller sein.
Dafür müßtest Du allerdings mit DOM/Javascript arbeiten um das Scrollen zu ermöglichen. In etwa so, ich hacke es schnell mal hin, also kein Anspruch auf Fehlerfreiheit:
HTML-Code:
<script type="text/javascript">
// Verändert margin-top des Elemts InhaltsDIV um den Wert px
function scroll(px) {
// Variablen für Element und dessen aktuellen Wert aus margin-top
var obj = document.getElementById('InhaltsDIV');
var mrgn = obj.style.getAttribute('marginTop', false);
// Falls Attribut margin-top nicht gesetzt wurde: Setzen und Wert=0
if (mrgn == '') {
obj.style.setAttribute('marginTop', '0', false);
mrgn = 0;
}
// Wert px zu aktuellem margin-top von InhaltsDiv addieren.
obj.style.marginTop = mrgn + px;
}
</script>
<img src="pfeil_hoch" onclick="scroll('-5');" />
<img src="pfeil_runter" onclick="scroll('5');" />
So in etwa vielleicht. Was fehlt, ist noch eine Abfrage, wann das jeweilige Ende erreicht ist. Dazu muß man die Höhe des InhaltsDIVs und des umschließenden DIVs abfragen und mit dem aktuellen Margin vergleichen. Stopposition für runter ist margin-top == 0, Stopposition für hoch ist HöheInhaltsDIV + margin-top (negativer Wert!) == HöheUmschließendesDIV.
Alternativ bietet sich noch overflow:scroll oder ein Iframe für das InhaltsDIV an, die dann vom Browser angezeigte Scroll-Leiste kannst Du stylen, über das Attribut "dir" (<div dir="rtl">) sollte es möglich sein, den Scrollbalken auf die linke Seite zu bekommen.
Viel Erfolg und beste Grüße,
Kostja
Lesezeichen