Javascript 检查jQuery UI缓解方法是否可用
我正在编写一个插件,可以进行一些切换,我需要一种方法来检查哪些缓解方法是可用的。我希望在可用时支持jQuery UI。看起来这些都在中的effects包中,但由于可以取消选中,因此检查jQuery UI是否可用似乎还不够。我想特别检查放松方法是否可用 您可以通过以下方式进行检查:Javascript 检查jQuery UI缓解方法是否可用,javascript,jquery,jquery-ui,plugins,easing,Javascript,Jquery,Jquery Ui,Plugins,Easing,我正在编写一个插件,可以进行一些切换,我需要一种方法来检查哪些缓解方法是可用的。我希望在可用时支持jQuery UI。看起来这些都在中的effects包中,但由于可以取消选中,因此检查jQuery UI是否可用似乎还不够。我想特别检查放松方法是否可用 您可以通过以下方式进行检查: if ( $.easing && $.easing.easeInOutQuad ) { // Use easing function easeInOutQuad } else { //
if ( $.easing && $.easing.easeInOutQuad ) {
// Use easing function easeInOutQuad
} else {
// Use some other stuff
}
参见UI核心中的第597行(http://jqueryui.com/ui/jquery.effects.core.js)
链接已断开,但仍能正常工作。以下是我想使用的内容:
function verifyEasing(input) {
return 'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) ? input : false;
}
如果输入是“线性的”
,或者可以从jqueryui获得,那么它将返回它。否则它将返回false
。我是这样做的,如果您将false
作为.toggle()
easing值传递,那么它将默认为'swing'
——因此无需专门检查swing
。像这样:
$('.target').toggle( 800, verifyEasing(input) );
我想如果您也要检查自定义缓解功能,那么可以在布尔值中添加一个$.isFunction
检查:
'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) || $.isFunction(input)
很高兴发现这让我朝着正确的方向思考。请参阅下面我的回复,了解我最终使用的内容。我将返回
null
-后期注释:)而不是返回false