在jQuery库和offset()方法的帮助下,通过编写这个简单的代码,元素将逐渐改变位置似乎是合乎逻辑的.
for (i = 0; i < 900; i = i + .5) { $('#moving-element').offset({ top: i }) }
浏览器将停止一段时间并最终将元素移动到距离顶部900px的位置,不会观察到任何转换.出于好奇,我写了这个:
for (i = 0; i < 900; i = i + .5) { $('#moving-element').offset({ top: i }); console.log(i) }
看到控制台正在输出连续的数字,但只有在for循环结束后它才会偏移元素.
为什么这不会在代码执行时逐渐完成?