我正在使用CSS过渡有点倒计时吧:为什么我需要在jQuery调用之间放置1ms setTimeout()?
.livebar {
background-color: black;
transition: width 15s linear;
width: 100%;
height: 5px;
}
此代码不能正常工作(在Chrome),在某种意义上说,没有过渡。宽度会立即进入0:
$("#barbag").append("<div class='livebar'></div>");
$(".livebar").css("width", "0");
...但是这个代码精美的作品:
$("#barbag").append("<div class='livebar'></div>");
setTimeout(function(){$(".livebar").css("width", "0")}, 1);
此外,在控制台作品分别做了两个语句,而是粘贴在这两个失败。
似乎Chrome需要一些时间后创建.livebar
股使过渡“积极”。这是一个已知的错误,还是我做错了什么,或者是完全不同的事情?
这是使用JS的动画不过,当CSS是更适合这是不理想的。 –
这几乎肯定会起作用,就像我的'setTimeout()'修复程序一样,但我想了解这里发生了什么! –