来自动画元素变换旋转(Dyin的答案)我仍然无法让它正常工作。
我想用jQuery .show()淡入div。此div 包含一个 img。现在我希望在 .show() 命令的最开头使用 css 过渡和缩放(不是 jQuery,因为它更平滑)慢速放大 img。
简而言之:我希望div 在包含的 img 缩放时淡入(同时显示和缩放)。但是我只能在 .show() 函数完成后进行缩放,如下所示:
$( this ).show(800, function(){
$( ".bullets" ).removeClass("wait");
$( this ).find(".csc-textpic-image img").removeClass("zoomout").addClass("zoomin");
});
如果我将 .addClass() 放在函数之外,该类会添加到源代码中,但 img 根本不会缩放,如下所示:
$( this ).find(".csc-textpic-image img").removeClass("zoomout").addClass("zoomin");
$( this ).show(800, function(){
$( ".bullets" ).removeClass("wait");
})
.CSS:
.zoomin {
transition: 24s linear;
-webkit-transform: scale(1.4);
-moz-transform: scale(1.4);
-ms-transform: scale(1.4);
-o-transform: scale(1.4);
transform: scale(1.4);
}
.zoomout {
transition: 24s linear;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1);
}
任何帮助将不胜感激!
非常感谢杰里米·蒂勒!最简单的解决方案是使用完整的 CSS:
代替jQuery .show(),我只是添加了另外两个类:.visible 和 .hidden
.visible {
visibility: visible;
opacity: 1;
transition: opacity 2s linear;
}
.hidden {
visibility: hidden;
opacity: 0;
transition: visibility 0s 2s, opacity 2s linear;
}
并在父 DIV 中添加/删除它们:
$( this ).removeClass("hidden").addClass("visible");
$( this ).find(".csc-textpic-image img").removeClass("zoomout").addClass("zoomin");
现在,淡入并同时扩展工作!谢谢!