我编写了一个插件来进行一些切换,我需要一种方法来检查可用的缓动方法。我想在可用时支持 jQuery UI缓动方法。看起来那些在自定义构建器的效果包中,但由于可以取消选中,因此检查 jQuery UI 是否可用似乎还不够。我想特别检查缓动方法是否可用。
问问题
1257 次
2 回答
7
你可以这样检查:
if ( $.easing && $.easing.easeInOutQuad ) {
// Use easing function easeInOutQuad
} else {
// Use some other stuff
}
请参阅597
UI 核心 ( http://jqueryui.com/ui/jquery.effects.core.js ) 中的行。
链接它坏了,但它应该仍然有效。
于 2011-12-23T18:44:40.423 回答
1
这是我想我要使用的:
function verifyEasing(input) {
return 'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) ? input : false;
}
如果输入是'linear'
或者如果它可以从 jQuery UI 获得,那么它将返回它。否则它将返回false
。false
如果你作为缓动值传递,我就是这样做的 b/c ,.toggle()
那么它将默认为'swing'
- 因此无需swing
专门检查。像这样:
$('.target').toggle( 800, verifyEasing(input) );
我想如果你也想检查自定义缓动函数,那么你可以$.isFunction
在布尔值中添加一个检查:
'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) || $.isFunction(input)
于 2011-12-24T18:10:04.173 回答