我有一个函数,我想传递一个附加到jQuery原型的自定义jQuery函数:$ .fn。
例如,
$.fn.customFx = function() {
//do something...
}
function foo(func1) {
//do something...
$(selector).func1();
}
$(document).ready(function() {
foo($.fn.customFx);
}
这样的事情可能吗?
答案 0 :(得分:7)
function foo(func1) {
func1.call( $(selector) );
}
答案 1 :(得分:5)
您可以尝试将函数名称作为字符串传递。试试这个。
$.fn.customFx = function() {
//do something...
}
function foo(func1) {
//do something...
$(selector)[func1]();
}
$(document).ready(function() {
foo('customFx');
}
答案 2 :(得分:1)
您必须将函数名称作为字符串传递
$.fn.customFx = function() {
//do something...
}
function foo( methodName ) {
//do something...
$(selector)[ methodName ]();
}
$(document).ready(function() {
foo( "customFx" );
}
或者,您可以使用call / apply函数来调用该函数,但这里的开销很大。