1.3k Aufrufe
Gefragt in Webseiten HTML von simontheprogger Mitglied (719 Punkte)
Hallo,

Ich habe eine Internetseite erstellt, auf der der Inhalt dynamisch per JavaScript aufgebaut wird. Zur Zeit werden die Elemente durch "document.getElementByID("foo").innerHTML" geändert. Da das etwas kantig aussieht, möchte ich einen Slide-Effekt einbauen.

Meine Idee ist bisher:
in einem <div>-Container werden 3 <div>-Container nebeneinander eingebunden, wobei der 1. links und der 3. rechts komplett aus dem Anzeigebereich herausragt und durch "overflow:hidden" unsichtbar ist. Durch einen Klick auf den entsprechenden Button wird "document.getElementByID("bar").style.left = '100%'" aufgerufen, was die inneren Container verschiebt, sodass jetzt statt dem 2. der 1. Container sichtbar ist.
Dies wird durch den CSS3-Tag "(...)transition:all 1.0s ease-in-out;" auch schick animiert.

Jetzt war mein Gedanke, dass ich vor Beginn der Animation den Inhalt von 2 auf 3 schiebe und 3 OHNE ANIMATION nach links schiebe, dann den Inhalt von 2 anpasse um diesen Container anschließen MIT ANIMATION nach rechts zu schieben. Für den Benutzer würde es dann so aussehen, als würde er "endlos" durch die Seite scrollen können, ohne dass ich sehr viel Speicher verbrachen muss. Siehe dazu auch die Skizze: plan.powerswitch.bplaced.net/images/animation.png

Meine Frage ist jetzt: Wie kann ich den Slide-Effekt mit JavaScript an- oder ausstellen? Oder habt ihr einen besseren Vorschlag? Und habt ihr meinen Text überhaupt verstehen können ;) ?

Grüße,
Simon

2 Antworten

0 Punkte
Beantwortet von friedel Experte (3.3k Punkte)
Hallo.

Ich konnte deiner Beschreibung nur teilweise folgen. Wenn ich dich richtig verstanden habe, könnte dir www.friedels-home.de/Board/viewtopic.php?f=6&t=2033&p=14419#p14419 helfen. Da geht es zwar um eine Seite mit einer Slideshow für Fotos, aber das Funktionsprinzip ist ähnlich. In diesem Beispiel wird die Animation durch
onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"
im äußeren Div gestoppt bzw. wieder gestartet. Natürlich könnte man so auch die Geschwindigkeit ändern, um sie langsam anlaufen zu lassen o.ä. Eine langsam startenden Animation gibt es z.B. auf www.friedels-home.de/JavaScripte/Chaplineffekt/file.htm
0 Punkte
Beantwortet von simontheprogger Mitglied (719 Punkte)
Okay, danke. Jetzt funktioniert es.
...