Javascript jquery使用百分比设置动画
我正在做一个非常简单的动画,就像这样:Javascript jquery使用百分比设置动画,javascript,jquery,Javascript,Jquery,我正在做一个非常简单的动画,就像这样: $("article").animate({ left:"-=70" },1000) 这是可行的,它从当前的“左”值中减去70px。 但问题是,我需要一个百分比: $("article").animate({ left:"-=70%" },1000) 当然,这是行不通的。有工作吗 谢谢 编辑:添加了一个JSFIDLE: 假设您尝试了上述方法,但不起作用,您可以尝试计算实际值: $("article").animate({ left:
$("article").animate({
left:"-=70"
},1000)
这是可行的,它从当前的“左”值中减去70px。
但问题是,我需要一个百分比:
$("article").animate({
left:"-=70%"
},1000)
当然,这是行不通的。有工作吗
谢谢
编辑:添加了一个JSFIDLE:
假设您尝试了上述方法,但不起作用,您可以尝试计算实际值:
$("article").animate({
left: parseInt($(this).css('left'),10)*0.3
},1000)
解释:$(this).css('left')
应该得到当前值,类似于125px
,它通过parseInt
删除px
部分,然后乘以0.3得到它的30%(假设这就是你所说的-70%)
编辑:请参见此处可用的小提琴。请注意:
- 因为我使用的是点击处理程序,所以我不能再使用
,所以我改为这个
$('article')
- 要设置动画的元素需要有一个非零的left初始值(否则数学将给出一个0值,并且不会发生动画)
- 元素需要使用
值,因此需要相应地left
定位
left
首先需要有一个显式的非零值。