molily: auch (JAVASCRIPT): We are not amused...

Beitrag lesen

JavaScript weiß nichts von der Darstellung (und das ist auch gut so). JavaScript muss folglich auch niemals Farbwerte auslesen. Problem gelöst.

Apodiktische, wie in Stein gemeißelte Aussagen: So kennt man Gunnar!

Auch wenn es argumentativ von keinem Wert ist, mag man dich manchmal fragen, ob du je ein größeres JavaScript geschrieben oder zumindest von weitem gesehen hast, das sogar in real existierenden Browsern läuft. Die Strategie, ein Problem dadurch zu lösen, indem man es für nicht existent erklärt, funktioniert in der Praxis nämlich leider nicht so gut.

Transitions sind übrigens für das, was man browserübergreifend mit JavaScript macht, ungeeignet. Klar, einfache Sachen gehen problemlos: Ein Element beim :hover skalieren oder dessen Farbe wechseln. Alles andere ist unzuverlässig. Prinzipiell ist es möglich, mit JavaScript eine Transition zu setzen und die Animation dem Browser zu überlassen. Das hat aber sehr viele Fallstricke. Ich habe es letztens erst ausprobiert und bin kläglich gescheitert. Es ist ohne viel Overhead ohnehin nicht programmatisch kontrollierbar wie klassische JavaScript-CSS-Animationen über Timeouts und Inline-Styles. Nicht jeder Browser, der die transition-Eigenschaften kennt, animiert die interessanten Eigenschaften auch vernünftig. Die Resultate sind daher inkonsistent. Für ältere Browser muss man ohnehin konventionell arbeiten, in neueren müsste man mit Browserabfragen arbeiten – ich wüsste nicht, wie man diese Unzulänglichkeiten mit Feature-Abfragen ermittelt.

Keyframe-basierte Animationen sind gegenüber Transitions schon eher interessant. Aber auch diese werden i.d.R. mit JavaScript getriggert – man denke an den hybriden Output von Sencha Animator und Adobe Edge. Das klingt auch alles einfacher, als es ist.

Mathias

0 49

auch (JAVASCRIPT): We are not amused...

Jean-Max
  • css
  1. 1
    molily
    1. 0
      molily
      1. 0
        Jean-Max
        1. 0

          Ainsi FONT FONT FONT...

          Jean-Max
          • menschelei
        2. 0
          ChrisB
          1. 0
            Jean-Max
            1. 0
              Der Martin
              1. 0
                Jean-Max
                1. 0
                  Der Martin
                  1. 0
                    Jean-Max
                    1. 0
                      Der Martin
                      1. 0
                        Jean-Max
                        1. 0
                          Der Martin
                          1. 0
                            ChrisB
                      2. 0
                        Jean-Max
                        1. 0
                          Matthias Apsel
                          1. 0
                            Jean-Max
                            1. 0
                              Matthias Apsel
                        2. 0
                          Matthias Apsel
                          1. 0

                            das Wichtigste vergessen

                            Matthias Apsel
                          2. 0
                            Der Martin
                            1. 0

                              Handymütze

                              Matthias Apsel
                              • menschelei
                            2. 0
                              Kai345
                          3. 0
                            Jean-Max
                            1. 0
                              Matthias Apsel
                              1. 0
                                Jean-Max
                                1. 0
                                  Matthias Apsel
                                  1. 0
                                    Jean-Max
                                    1. 0
                                      Matthias Apsel
                                      1. 0
                                        Jean-Max
                                        1. 0
                                          Matthias Apsel
                                          1. 0
                                            Jean-Max
            2. 0
              ChrisB
              1. 0
                Jean-Max
                1. 0
                  Matthias Apsel
                  1. 0
                    Jean-Max
                2. 0
                  ChrisB
                  1. 0
                    Jean-Max
                  2. 0
                    Matthias Apsel
                    1. 0
                      ChrisB
                3. 1
                  molily
              2. 0
                Gunnar Bittersmann
                1. 0
                  Mitleser
                  1. 0
                    Gunnar Bittersmann
                    1. 0
                      Mitleser
                2. 1
                  molily
                  1. 0
                    Gunnar Bittersmann
                    1. 0
                      molily