Hallo floater,
ich möchte per JavaScript einen Text im div scrollbar machen.
NICHT mit CSS -> overflow:scroll.
Dann eben overflow:hidden;!
Sondern mit Javascript. Dazu möchte ich eigene Pfeil-Buttons für "up" und down "haben".
Du kannst mit JavaScript nicht nur die style.top-Eigenschaft manipulieren, sondern auch die scrollTop-Eigenschaft des DIV-Elements.
Das Scrollen habe ich zwar hinbekommen, das Scrollen kann ich aber nicht mehr stoppen. Irgendwo hakt mein script, aber ich weiss nicht wo.
Dazu müsstest du mit zwei wechselseitig dynamisch zugewiesenen onclick-Handler-Funktionen arbeiten. Hierzu ein paar Code-Versatzstücke zur Anregung:
meinDIV = document.getElementById('meinButtonScrollDIV';
meinDIV.scrolling = false;
meinRunterScrollButton.onclick = function () {
meinDIV.runterScrollen();
this.onclick = meinDiv.scrollStop;
}
meinDIV.runterScrollen = function () {
if(meinDIV.scrolling)
this.scrolling = false;
if(this.scrollTop >= this.scrollHeight) {
this.scrollStop();
return;
}
this.scrollTop += scrollSchrittWertInPixeln;
meinDIV.scrolling = window.setTimeout('meinDIV.runterScrollen()', 42);
}
meinDIV.scrollStop = function () {
window.clearTimeout(this.scrolling);
this.onclick = runterScrollen;
}
Entsprechend mit dem Nach-oben-Scrollen verfahren.
Wenn ich auf "Up", dann soll der Text scollen, wenn ich noch mal auf "up" klicke, soll das Scrollen stoppen.
Schöner wäre es diesen Vorgang mit "onMouseDown" und "onMouseUp" zu handhaben.
Das fände ich nicht so komfortabel, weil für den Nutzer noch ungewohnter.
Gruß Gernot