检查jQuery方法是否存在

时间:2010-08-05 08:37:56

标签: javascript jquery

有可能吗?无论如何,在Javascript或jQuery中。

例如:$.isFunction($.isFunction());

Upd:但是如何检查jQuery插件的方法?有时它在调用时没有准备好并产生错误。示例:$.isFunction($().jqGrid.format)

2 个答案:

答案 0 :(得分:7)

要将功能传递给其他功能,请关闭()

$.isFunction($.isFunction);   // true!

当您编写()时,您正在调用该函数,并使用其返回的结果。没有参数的$.isFunction()会返回false(因为undefined不是函数),所以你说$.isFunction(false),当然也是false

除非您怀疑有人因某种原因可能已经为其分配了非功能值,否则我不会仅仅使用isFunction检查是否存在某些内容。对于纯存在检查,请使用in运算符:

if ('isFunction' in $) { ...

答案 1 :(得分:0)

是,

jQuery.fn.exists = function(){return jQuery(this).length>0;}

if ($(selector).exists()) {
    // code........
}