Du bist nicht eingeloggt.

B2B-Realm Status

Social Networks

B2B auf Twitter
B2B auf Facebook

Bugtracker

Wir suchen Verstärkung! Motivierte Entwickler, Tester sowie Gamemaster werden gesucht. Als Wertschätzung deiner Arbeit für die Community winken attraktive Vorteile. Weitere Informationen unter [Info] Team und Bewerbungen.

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 ;-)