qualidat
Threadersteller
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mi 03.07.2013 19:41
Titel CSS auslesen per Javascript klappt nicht richtig |
|
|
Im Rahmen eines JS-Kurses wurde als praktische Übung ein Pong-Spiel programmiert. Spielfeld, die Schläger und der Ball sind DIVs. Deren Anfangspositionen werden per CSS-Datei definiert und sollen später per Zugriff in der Art:
document.getElementById(id).style.top=y
verändert werden. Nach der gleichen Methode soll beim Start des Spieles zunächst die Position abgefragt werden, z.B.:
ypos=document.getElementById(id).style.top
Und genau dieser Aufruf liefert beim ersten Mal immer Nichts (nicht mal Null, denn style-Abfragen liefern Strings, aber das ist ein anderes, gelöstes Problem). Erst wenn style.top einmal per JS gesetzt wurde, kann es auch abgefragt werden.
Ich fasse nochmal zusammen: Die per CSS festgelgten Werte können per Javascript nicht gelesen werden. Erst wenn man sie einmal per Javascript gesetzt hat, gelingt das. Die "frischen", noch unveränderten CSS-Daten werden aber vom Browser optisch korrekt berücksichtigt, sind also nicht falsch. Warum ist das so? Man hat das Gefühl, die per CSS geschriebenen Vorgaben und die per JS gesetzten und gelesenen Style-Werte stammen aus verschiedenen Universen ...
Zuletzt bearbeitet von qualidat am Mi 03.07.2013 19:43, insgesamt 3-mal bearbeitet
|
|
Morgo
Dabei seit: 10.08.2005
Ort: Von Kowelenz bis Kölle
Alter: 39
Geschlecht:
|
Verfasst Mi 03.07.2013 20:15
Titel
|
|
|
^ Das, oder, wenn es um die Position geht, ggf. einfach gleich Element.offsetTop auslesen.
Zuletzt bearbeitet von Morgo am Mi 03.07.2013 20:16, insgesamt 1-mal bearbeitet
|
|