2010-08-24 72 views
1

jQuery中有什么可以让你指定速度的显示/隐藏效果(而不是它的持续时间)。jQuery slideToggle,显示/隐藏速度

谢谢。

+1

速度和持续时间有区别吗? – jAndy 2010-08-24 11:55:19

+1

我想他可能指的是接近'duration = distance/speed'的东西。它可能需要计算偏移量,然后除以速度变量等等等等...... – 2010-08-24 12:06:11

+2

@jAndy:下次你被抓到超速时问好的警察:) – fearofawhackplanet 2010-08-24 12:11:58

回答

4

在Yi Jiangs的评论基础上,速度是距离和持续时间的函数,可以说你想让它扩大到200px/s这样做,你需要使用元素高度和基本微积分算出动画应该持续多长时间采取,如果你的元素是300px高动画持续时间应该是:

300/200 = 1.5 seconds或1500ms,现在适用于http://api.jquery.com/slideToggle/,我们有一个赢家。

+0

我正在采取这种方法,我不相信它给出了适当的一致结果。也许这只是一种错觉。我现在就这样离开它。 – fearofawhackplanet 2010-08-24 12:13:31

+0

'$(this).slideToggle($(this).height());' – fearofawhackplanet 2010-08-24 12:15:18

1

你可以这样做:

.hide("slow") 
.hide("fast") 

有一个在这种情况下,速度和持续时间之间没有真正的区别。如果持续时间短,则速度很快(速度较快)。