[JavaScript] Bewegung von x nach y (evt. mit bremsung)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] Bewegung von x nach y (evt. mit bremsung)

    hi

    ich bräuchte für eine einfache animation ein javascript. ich könnte zwar scriptaculous benutzen, aber für ledigilch eine funktion wäre das etwas übertrieben finde ich.
    nun kenn ich mich leider mit javascript nicht mehr so gut aus, dass ich es auf anhin selber schreiben könnte.
    ich bräuchte nur ein beispiel oder einen denkanstoss, schreiben will ich es dann selber (lernfaktor).
    und zwar ist es so, ich muss von einem objekt mit der id='fotocontroller' lediglich das attribut margin-left ändern.
    von der aktuellen position (0,-500,-1000,-1500,-2000,..) auf 0, -500, -1000 oder -1500 (die werde können dabei beim onclick übergeben werden).

    ich kann die objekte bereits ansteuern, also ein "umschalten" geht, lediglich halt ohne animation.

    wie könnte ich die schlaufe einstellen, dass diese bewegung zB in 1 sekunde abläuft, und evt gegen ende noch etwas bremst (aber nicht zwingend).

    das wäre wahrscheinlich eine einfache schleife mit der ich es lösen könnte, aber ich will irgendwie nen zeitfaktor haben, zumal die javascript engies ja unterschiedlich schnell sind (v8, squirrelfish extreme).
    Zuletzt geändert von fabio; 25.09.2008, 19:46.

  • #2
    Guck dir mal window.setInterval() bzw. window.setTimeout() an.

    Kommentar


    • #3
      Auch wenn ich das Argument mit der Größe schon verstehen kann: Genau für sowas ist Scriptaculous doch wie geschaffen. Vor allem das mit der Bremsung. Das werden zwei Zeilen Code. Und sooo dick ist Scriptaculous auch nicht, vor allem, wenn man es komprimiert.

      Kommentar


      • #4
        nun es geht mir bei scriptaculous auch weniger um die dateigrösse als um die performance. da ist es viel zu hungrig. und da ich die seite eben auch für iPhones (in den kreisen unserer kunden bereits viele vorhanden) optimieren will, geht scriptaculous nicht.
        scriptaculous bewegt ein viereck vom einen zum anderen ende des bildschirmes in ca 5 schritten, es stockt also richtig.
        ich habe eine andere bibliothek gefunden http://jstween.blogspot.com/ mit der geht die animation auch im iPhone schön flüssig und schnell, braucht folglich also viel weniger performance.

        lediglich ein problem hab ich noch, und zwar halt wenn man die funktion per doppelklick ausführt, dann beginnt die animation etwas zu zittern. da muss ich wohl noch beim start der animation die links deaktivieren und beim ende wieder aktivieren. irgendwie einen dummyDIV mit einem durchsichtigen bild drüber legen ^^

        Kommentar


        • #5
          Du brauchst keine Bibliothek, wenn du weisst, was du willst und ein kleines Bisschen Ahnung hast von Javascript.

          Kommentar


          • #6
            da muss ich wohl noch beim start der animation die links deaktivieren und beim ende wieder aktivieren. irgendwie einen dummyDIV mit einem durchsichtigen bild drüber legen ^^
            Oder einfach merken, ob die Animation noch läuft und eben nicht starten!

            Kommentar


            • #7
              habs bereits gelöst, gibt nen eventhandler "onfinished" und "onstart" oder so, hab dort jeweils die variabel moving auf 1 und 0 gesetzt.
              klappt super, schön flüssig. werde als nächstes mal das JS file etwas bereinigen.

              Kommentar

              Lädt...
              X