• Hallo Besucher!

    Du bist neu im Forum? Dann registriere dich hier, um Diskussionen beizutreten oder eigene Themen zu erstellen. Für die Registrierung ist es erforderlich, dass du einen Spielaccount bei Die Stämme hast.

    Andernfalls kannst du dich hier direkt einloggen.

    Falls du dein Passwort vergessen hast, kannst du hier ein neues Passwort anfordern.

[Javascript] Element bewegen, Problem mit Programmablauf

DeletedUser111004

Gast
Hallöchen,

ich bin gerade dabei Javascript zu lernen, sprich bin noch ziemlicher Anfänger. Für den Anfang hab ich mir gedacht ich versuche mal ein Bild von links nach rechts zu bewegen, wenn es den rechten rand erreicht hat soll es wieder nach links usw. Nur will es nicht ganz funktionieren und ich finde einfach nicht heraus warum, logisch betrachtet müsste es funktionieren, kann mir vielleicht von euch jemand weiterhelfen ? Hier mal der Code:

Code:
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Ohne_Titel_1</title>
</head>

<body>
<img src="./images/bild1.png" alt="Bild1" onclick="bewegen()" id="bild"></img>

<script type="text/javascript">
var zaehler = 1;
var zaehler2 = 1;

function nachrechts() {
zaehler = 1;
window.setInterval(function() {
zaehler+=10;
document.getElementById("bild").style.marginLeft = zaehler + "px";}
}
,100);}

function nachlinks() {
zaehler2 = 1;
window.setInterval(function() {
zaehler2+=10;
document.getElementById("bild").style.marginRight = zaehler2 + "px";}
}
,100);}

function bewegen() {
window.setInterval(function() {
while(document.getElementById("bild").style.marginLeft < 1356)
{nachrechts();}

while(document.getElementById("bild").style.marginRight < 1356)
{nachlinks();}


}
,100);}

</script>

</body>

</html>


Wär echt nice wenn mir jemand das Problem erläutern könnte.^^


LG
 

DeletedUser

Gast
Zunaechst hast Du syntaktische Fehler in Deinem JS-Code -> 2 schließende geschweifte Klammern zuviel.
Wenn Du Deinen Code einrueckst, so wirst Du diese auch recht zuegig finden.

Wenn Dein Skript dann laeuft, so wirst Du sehen, dass Dein Skript auch noch einen logischen Fehler hat.
Du arbeitest zum einen mit der JS-Timeout-Funktion & in der aufgerufenen Funktion dann mit einer Schleife...
Das Skript wird sich aufgrund der kurzen Wiederholungszeit "aufhaengen"...
 
Zuletzt bearbeitet von einem Moderator:
Oben