我正在编写一个 jQuery 插件,我希望我的代码能够利用 jQuery UIshow(effect, [options], [speed], [callback])
和hide(effect, [options], [speed], [callback])
函数,它们允许您显示和隐藏带有漂亮动画的元素。
但是,如果 jQuery UI 不可用,我也希望我的插件能够优雅地降级,切换回使用标准 jQuery API 中存在的基本、非动画show()
和功能。hide()
我需要专门测试显示和隐藏功能,因为即使 jQuery UI可用,它也可能是自定义版本,不包括效果组件。
起初我以为我可以做类似的事情:
if(typeof myelement.show('blind', 'slow') == 'undefined')
{
myelement.show('blind', 'slow');
}
else
{
myelement.show();
}
但是这当然行不通,因为即使 UI 不存在,show()
它仍然是一个函数,只是有不同的签名——所以在任何一种情况下typeof
都会返回object
。
那么,我检查 jQuery UI 是否可用于我的插件的最佳方法是什么?任何帮助深表感谢!