jQuery slideToggle,显示/隐藏速度

Posted

技术标签:

【中文标题】jQuery slideToggle,显示/隐藏速度【英文标题】:jQuery slideToggle, show/hide speed 【发布时间】:2011-04-03 03:16:14 【问题描述】:

在 jQuery 中是否有任何东西可以让您指定显示/隐藏效果的速度(而不是其持续时间)。

谢谢。

【问题讨论】:

速度和时长有区别吗? 我想他可能指的是接近duration = distance/speed 的东西。它可能需要计算偏移量,然后除以速度变量等... @jAndy:下次超速被抓时请教好警察 :) 【参考方案1】:

以蒋毅的评论为基础,速度是距离和持续时间的函数,假设您希望它在200px/s 处扩展,您需要使用元素高度和基本微积分来计算动画的长度应该采取,如果你的元素是 300px 高动画持续时间应该是:

300/200 = 1.5 seconds 或 1500 毫秒,现在将其应用于 http://api.jquery.com/slideToggle/,我们就有了赢家。

【讨论】:

我采用了这种方法,但我不相信它会给出正确一致的结果。也许这只是一种视错觉。我现在就这样吧。 $(this).slideToggle($(this).height());【参考方案2】:

你可以这样做:

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

在这种情况下,速度和持续时间没有真正的区别。如果持续时间很短,那么它很快(更高的速度)。

【讨论】:

【参考方案3】:

恒速:

$element.slideToggle($element.height());

【讨论】:

以上是关于jQuery slideToggle,显示/隐藏速度的主要内容,如果未能解决你的问题,请参考以下文章

jQuery slideToggle,显示/隐藏速度

jQuery 效果 - slideToggle() 方法

JQuery显示隐藏

[ jquery 效果 slideToggle([speed,[easing],[fn]]) ] 此方法用于滑动显示隐藏的被选元素

jQuery slideToggle()不显示:元素之前

jQuery slideToggle 显示类型