Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
ich verzweifel irgendwie gerade an einer eigentlich sehr simplen Sache. Ich brauche ein DIV was sich per Klick auf einen Botton rechts verschiebt um einen Wert X. Wenn man noch einmal drauf klickt, verschiebt er sich noch einmal - bis er dann irgendwann an eine Grenze stößt und nicht mehr weiter kann. Die Animation soll sanft laufen (das ist da wo ich hänge). Bei allem was ich probiere, geht es entweder gar nicht oder das DIV geht unendlich lang nach rechts.
Den Code habe ich von einem Tutorial, was aber auf meine Thematik leider nicht eingeht.
Wie wäre es mit einer Abbruchbedingung? Du rufst wandern ständig neu auf ohne zu definieren wann es aufhören soll. Die Breite von Elementen (oder auch dem sichtbaren Bereich) könnte dabei hilfreich sein.
Desweiteren:
- warum ist die x-Position (i) global? Du kannst das Element nach seiner derzeitigen Position fragen.
- absolute Positionierung ist in dem kleinen Szenario zwar "die Position im Browser-Fenster". Aber später wirst du sicherlich noch die anderen Arten (static, relative, fixed) kennenlernen und merken, daß absolute Positionierung sich nicht auf das Browser-Fenster bezieht.
Ich habe es noch eine Weile mit Abbruchbedingung usw probiert - letztendlich habe ich das Problem aber ganz einfach mit jquery gelöst. Dies hat genau die Funktion die ich brauche.
ABER! Auch das kleine jQuery-Snippet hat keine spezielle Abbruchbedingung für deinen Fall, sondern jQuery.animate hat eine und zwar die Dauer. Die beträgt standardmäßig nämlich 400ms, also hast du vermutlich die Schrittweite so gewählt, daß sie zur Dauer der Animation passt, oder?
Das ist natürlich in sofern schlecht, als daß es nicht mit variablen Container-Größen funktioniert, ausser du berechnest die Schrittweite entsprechend zur Container-Breite.