Du bist nicht eingeloggt.

B2B-Realm Status

Social Networks

B2B auf Twitter
B2B auf Facebook

Bugtracker

Account erstellen   |   Login   |   Download / How To Play   |  FAQ   |   Support

1

Montag, 24. September 2012, 14:49

Frage zu JavaScript

Hi,

ich habe mir ein simples Script für einen Slider gebastelt. Bei Klick erhöht/verringert das Script den Abstand von "slider" via Margin-Left.
Mein Problem ist nun, dass er statt den "slider" im "sliderWrapper" zu verschieben, die ganze Webseite verschiebt. Das Margin-Left vom Div-Container wird verändert doch hat keinen Einfluss auf die Position zwischen slider und sliderWrapper. Kann mir jemand dort weiter helfen?

HTML

Quellcode

1
2
3
4
5
6
7
<div id="sliderWrapper" style:"position: absolute fixed; width: 980px; overflow: hidden;">
	<div id="slider" style:"width 4900px>
		<img />
		<img />
		.... 
	</div>
</div>


Script

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
		sliderBreite = 980;
		sliderDauer = 4000;
		sliderGeschwindigkeit = 1000;
		sliderFrames = 100;
		sliderSchritte = <?php echo count ($sliderdata);?>;
		sliderSchritt = 0;

function sliderWeiter() {
		sliderMargin = sliderSchritt * sliderBreite;
		document.getElementById("slider").style.marginLeft = sliderMargin;
		sliderWeiterAktiv = setInterval("sliderMargin = sliderMargin + (sliderBreite / sliderFrames); document.getElementById("slider").style.marginLeft = sliderMargin;", sliderGeschwindigkeit / sliderFrames);
		setTimeout("clearInterval(sliderWeiterAktiv); sliderSchritt ++; sliderMargin = sliderSchritt * sliderBreite; document.getElementById("slider").style.marginLeft = sliderMargin; if (sliderSchritt == sliderSchritte){sliderSchritt = 0;};", sliderGeschwindigkeit + 10);}

function sliderZurueck() {
		sliderMargin = sliderSchritt * sliderBreite;
		document.getElementById("slider").style.marginLeft = sliderMargin;
		sliderWeiterAktiv = setInterval("sliderMargin = sliderMargin - (sliderBreite / sliderFrames); document.getElementById("slider").style.marginLeft = sliderMargin;", sliderGeschwindigkeit / sliderFrames);
		setTimeout("clearInterval(sliderWeiterAktiv); sliderSchritt = sliderSchritt - 1; sliderMargin = sliderSchritt * sliderBreite; document.getElementById("slider").style.marginLeft = sliderMargin; if (sliderSchritt == 0){sliderSchritt = sliderSchritte;};", sliderGeschwindigkeit + 10);}


Liebe Grüße
Die Buschkreatur

2

Montag, 24. September 2012, 19:39

Ah,

man kann eine DIV box nicht mehr als ihre eigene Größe unterschneiden.
Darauf muss man ersteinmal kommen ;-)