【发布时间】:2011-06-16 16:26:34
【问题描述】:
【问题讨论】:
标签: jquery css animation easing
【问题讨论】:
标签: jquery css animation easing
甜美的效果!
这些似乎是通过 JS 触发的 CSS 过渡。覆盖首先立即缩放到 50% 的大小,然后动画到 105%,然后动画回到 100%,两者都使用 ease-out 的缓动设置。
这会导致所谓的“80/20 效应”:最初跳过动画的前 80%(或在本例中为 50%),动画看起来更加活泼和响应迅速。
以下是有问题的代码位:(复制自 reederapp.com 的源代码——我没有写这些!)
CSS (http://reederapp.com/mac/css/main.css)
#screen-overlay.animate {
-webkit-transition: all 0.2s ease-out;
}
JS (http://reederapp.com/mac/js/mac.js)
$overlay()
.removeClass('animate')
.css({opacity:0,'-webkit-transform':'scale(0.5)','background-color':'rgba(0,0,0,0)'})
.show();
setTimeout(function() {
$overlay().addClass('animate').css({'-webkit-transform':'scale(1.05)',opacity:1});
setTimeout(function() {
$overlay().css({'-webkit-transform':'scale(1)'});
setTimeout(function() {
$overlay().css({'background-color':'rgba(0,0,0,0.5)'})
});
},200);
},10);
【讨论】: