我想用.appendTo()
來修改元素的DOM位置。一旦完成,我需要使用CSS3對元素進行動畫處理。使用jQuery後執行CSS3動畫.appendTo
該元素不會動畫,而是捕捉到新的CSS樣式。
的JavaScript:
$(".run").click(function() {
$(".imageOriginal").appendTo(".insert").toggleClass("imageAnimated");
});
HTML:
<div class="insert"> </div>
<img src="img/img1.png" class="imageOriginal"/>
CSS:
.imageOriginal {
-webkit-transform: scale(0.1);
}
.imageAnimated {
-webkit-transition: all 1s ease-in-out;
-webkit-transform: scale(1);
}
我分開的.appendTo()
和.toggleClass()
方法火在兩個不同的點擊事件。這種方法有效(但顯然不是理想的)。追加後我也嘗試使用.delay(1000)
,但這也不起作用。
JQuery用戶界面提供.switchClass()函數如下所述: http://stackoverflow.com/questions/1248542/jquery-animate-with -css-class-only-without-explicit-styles – Stephen 2011-12-21 19:42:29
@Stephen他們是否更新了jQuery UI以使用CSS3轉換? – Jasper 2011-12-21 19:45:34
@Stephen請不要推薦整個(臃腫,垃圾)庫,只是爲了實現易於手工編寫的行爲的單個函數。 – Bojangles 2011-12-21 20:01:00