数学负数计算适用于jquery缓动旋转

时间:2015-05-24 23:59:32

标签: javascript math negative-number

我正在使用jquery缓动插件,我想应用缓动" easeInOutBounce"到div旋转,但不像this example中那样(其中,基于90,旋转将在0到90之间):

num = 90;
$('div').animate({borderSpacing: num},{
    step: function(now){
        if(now >= num/2){xxx = num - now;}else{xxx = now;}
        console.log(xxx);
        $(this).css('transform','rotate('+ xxx +'deg)');
    },
    duration: 1000,
    easing: 'easeInOutBounce'
},'linear');

我想要旋转不是从0开始,而是将值的部分值转换为负数,因此动画平衡为0:
在这种情况下,基于90,我希望动画介于-45和45之间。

我做了一个糟糕的计算而且我无法达到我想要的结果...请帮助进行正确的数学计算,非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

只需尝试now = now - num/2;而不是if...声明。

这对应于now |--> now - 90/2的映射now,当[0,90]的域名为{{1}}时,其范围为[-45,45]。