DIV Elemente horizontal Scrollen
Maik Wenner
- javascript
Hallo Leute,
ich will mehrere DIV Elemente auf horizontaler Ebene Scrollen, dazu hole ich mir diese per DOM von einem Elternknoten, und verändere dann nacheinander die Style Angabe left von den Elementen immer im -1.
Das funktioniert auch einwandfrei. Ich wollte nur wissen ob es evtl. noch andere bzw. bessere Methoden gibt wie man das lösen könnte. Momentan ist es nämlich so, das selten aber abundzu eben die Frames kurz einbrechen. Schöner wäre es wenn die DIV Elemente immer konstant in einer Geschwindigkeit bewegen.
Vielen Dank für die Aufmerksamkeit!
Gruß, Maik.
Hi!
Zeig doch mal etwas von Deinem Code bitte!
off:PP
Hi.
Zeig doch mal etwas von Deinem Code bitte!
================
var thumbnode = document.getElementById("scrollcontent");
var scrollsize = thumbnode.style.width;
var scrollspeed = 20;
var spacing = 20;
var thumbs = Array();
var thumbpos = Array();
var scr = null;
function pxtoint(px) {
return parseInt(px.substring(px,(px.length-2)));
}
function inttopx(px) {
return String(px+"px");
}
function init() {
var temp = Array();
temp = thumbnode.getElementsByTagName("div");
for (i=0;i<temp.length;i++) {
thumbs[i] = temp[i];
thumbpos[i] = 0;
}
}
function genmovement(x) {
//Maximal nur 4 Bilder berechnen
for (i=0;i<=4;i++) {
thumbpos[i] = inttopx((i*(pxtoint(thumbs[i].style.width)))-x);
}
for (i=0;i<=4;i++) {
thumbs[i].style.left = thumbpos[i];
}
}
function move(x,sp) {
if (x > (pxtoint(thumbs[0].style.width)) ) {
thumbs.push(thumbs[0]);
thumbs.shift();
x = 0;
}
genmovement(x);
x++;
scr=setTimeout("move("+x+","+sp+")",scrollspeed);
}
init();
move(0,scrollspeed);
================
Das ganze steht in einer JavaScript Datei, welche am Ende des HTML Dokumentes eingebunden wird.
Gruß, Maik