Javascript css transition for vertical size does not work -
i have element named 'frame'. have button code linked 'onlclik'. idea apply height decrease transition 'frame'.
this code results simple frame hide, without transition.
frame.style.csstext+="transition: height 1500ms; -webkit-transition: height 1500ms;"; frame.style.height = "0px"; //frame.style.display = "block";
(the last line can applied or not, getting same result.)
i can play increasing or decreasing height, in both cases height applied instantly. there not transition...
now surprising behavioor.... transition works fine !!! write height @ styles chrome debugger window , see transition works !!
what reason becasue transition not work @ code level ?
i have similar transition code width increase , works fine.
any idea? thanks
try setting height within settimeout
callback:
frame.style.csstext+="transition: height 1500ms; -webkit-transition: height 1500ms;"; settimeout(function() { frame.style.height = "0px"; }, 0);
settimeout
0
delay instructs browser wait until current ui thread completes before executing supplied callback. more on why settimeout
0
delay useful, check out this thread.
Comments
Post a Comment