jQuery test for whether an object has a method?
Is it possible to test whether a jQuery object has a particular method? I've been looking, but so far wit开发者_运维知识库hout success. Thanks!
This should work:
if (!!$.prototype.functionName)
Because jQuery methods are prototype into a jQuery object, you can test it from the prototype object.
if( $.isFunction( $.fn.someMethod ) ) {
// it exists
}
This uses the jQuery.isFunction()
[docs] method to see if $.fn.someMethod
is indeed a function. (In jQuery jQuery.fn
is a reference to the prototype object.)
try
if ($.fn.method) {
$('a').method(...);
}
or
if ($.method) {
$.method(...);
}
//Simple function that will tell if the function is defined or not
function is_function(func) {
return typeof window[func] !== 'undefined' && $.isFunction(window[func]);
}
//usage
if (is_function("myFunction") {
alert("myFunction defined");
} else {
alert("myFunction not defined");
}
this worked for me
if (typeof myfunctionname === 'function')
You should be able to look for undefined
if( typeof jQuery("*").foo === "undefined" ){
alert("I am not here!");
}
精彩评论