Hallo zusammen,
ich halte bei folgendem Code die Fehlermeldung "this.style" is not defined sobald ich die prototype function "fwmhs_pos" durch die Schleife in "fwmhs_move" aufrufe.
function fwmhorizontalslider(id, w)
{
this.sliderid = id;
obj_elements = document.getElementById(id).getElementsByTagName('li');
for(var i=0; i < obj_elements.length; i++)
{
obj_elements[i].style.left = (w * i)+'px';
}
this.pos = 0;
this.ewidth = w;
this.ecount = obj_elements.length;
}
fwmhorizontalslider.prototype=
{
fwmhs_move:function(direction)
{
timer = 0;
if(direction == 'next' && this.pos < (this.ecount-1)){
for(var i = (this.pos * this.ewidth) + 1; i <= (this.pos + 1) * this.ewidth; i++)
{
setTimeout(''+ this.sliderid +'.fwmhs_pos('+ i +')', timer++);
}
this.pos++;
}
else if(direction == 'prev' && this.pos > 0)
{
for(var i = (this.pos * this.ewidth) - 1; i >= (this.pos - 1) * this.ewidth; i--)
{
setTimeout(''+ this.sliderid +'.fwmhs_pos('+ i +')', timer++);
}
this.pos--;
}
},
fwmhs_pos:function(pos)
{
this.style.left = '-'+pos+'px';
},
}
Der Slider wird wie folgt initiiert:
<script type="text/javascript"> var myslider=new fwmhorizontalslider('myslider', 820) </script>
Die weiteren Funktionsaufrufe werden durch onclick angesteuert:
myslider.fwmhs_move('prev');
myslider.fwmhs_move('next');
Sobald man diese Funktionen ausführt wird der o.g. Fehler ausgegeben, und da ich bereits meine möglichkeiten ausgeschöpft habe, hoffe ich das einer von euch mir weiterhelfen kann.
Vorab vielen Dank