如何简化以下功能?
我有一堆补间具有基本相同的缓动属性。 我意识到这个问题非常广泛,但我还没有想出足够令人满意的东西。
$('input').change(function() {
if($("#radio").is(":checked")){
var tween = new TWEEN.Tween(tween1.scale).to({ y: 4 }, 1000).start();
tween.easing(TWEEN.Easing.Elastic.InOut);
tween.yoyo(true);
var tween = new TWEEN.Tween(tween2.position).to({ y: 0.05 }, 1000).start();
tween.easing(TWEEN.Easing.Elastic.InOut);
tween.yoyo(true);
var tween = new TWEEN.Tween(tween3.scale).to({ y: 6 }, 1000).start();
tween.easing(TWEEN.Easing.Elastic.InOut);
tween.yoyo(true);
...
}
});
答案 0 :(得分:1)
最经典的方法是声明一个函数:
function doTween(attr, y) {
var tween = new TWEEN.Tween(attr).to({ y: y }, 1000).start();
tween.easing(TWEEN.Easing.Elastic.InOut);
tween.yoyo(true);
}
并使用
致电doTween( tween1.scale, 4 );
doTween( tween2.position, 0.05 );
doTween( tween3.scale, 6 );