ugrás a tartalomhoz

Archívum - Jan 31, 2017

setTimeout(fn, 0);

asam9 · 2017. Jan. 31. (K), 00.07
Sziasztok,

Egy függvényben azt ellenőrzöm, hogy az adott elem scrollWidth értéke nagyobb-e, mint ugyanennek az elemnek a clientWidth értéke és ennek függvényében hozzáadódik egy class a szülőelemhez, ami módosítja az elrendezést. Ez resize eseményre tökéletesen megvalósul.
Ha azonban a nézetváltáshoz közeli szélességnél frissítem az oldalt, mikor a scrollWidth-nek már nagyobbnak kellene lennie, akkor is egyformának veszi a két értéket (kb. 5-10 pixelig érzékeli rosszul). Amikor beraktam a setTimeout(fn, 0); utasítást, utána tökéletesen működött.
Azt szeretném megtudni, hogy ez a ronda megoldás miképpen működik a háttérben, és hogy esetleg van-e ötlet a setTimeout használatának elkerülésére.