我自動啓動CSS轉換時出現問題。通常這是通過向正在動畫的元素添加一個類來完成的。我正在通過jQuery動態創建我的元素。在創建元素後立即添加類時,它會立即將其轉換爲最終狀態,而不進行轉換。它只有當我添加一個短暫的延遲時纔有效。不是很好,這可以以不同的方式完成嗎?CSS轉換立即進入最終狀態
function startbullet() {
var bullet = $('<div class="bullet"></div>');
$("#wrapper").append(bullet);
setTimeout(function() { bullet.addClass("animate"); }, 10);
}
setInterval(startbullet, 2000);
#wrapper {
height: 400px;
position: relative;
}
.bullet {
position: absolute;
top: 10px;
left: 10px;
width: 20px;
height: 20px;
background-color: #0ff;
border-radius: 10px;
transition-duration: 5s;
transition-timing-function: linear;
}
.bullet.animate {
top: 150px;
left: 400px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="wrapper">
</div> <!-- end wrapper -->
這是發生在一個特定的瀏覽器或所有瀏覽器? (例如Firefox,IE,Chrome等) – bwegs
我沒有得到你想要實現的。添加一個類與動畫無關,也許你正在尋找jQuery動畫http://api.jquery.com/animate/ – Michelangelo
好吧,它適合我:http://codepen.io/anon/pen/jqJMpR 不需要關鍵幀或jquery的動畫。 – igwan