2014-04-30 27 views
1

我创建一个jQuery插件,这需要在参数字符串的字符串:处理程序。JQuery的:调用函数与可变

根据的是,我的插件将陆续推出。 例子,如果: “处理程序=提交”

在我的插件,我会打电话:

$("form").submit(function() { 
// Code inside 
}); 

与处置= “事件的内容”

$("form").submit(function() { 
// Code inside 
}); 

我已经试过:

$("form").this[handler](function() 
$("form").window[handler](function() 

但没有结果。 有什么想法? 感谢您的帮助:)

回答

3

如果它是一个事件

var handler = 'submit'; 

$("form").on(handler, function() { 

}); 

如果它是一个jQuery方法

var handler = 'hide'; 

$('#element')[handler](); 

或有回调

var handler = 'fadeIn'; 

$('form')[handler](function() { 

}); 

$()返回一个对象,所以你可以使用点或括号来引用方法,whi CH将对象等的属性,以便只需更换与适当的括号记号代替点表示法。

如果是事件,则最好使用on(),但也可以使用括号表示直接引用方法,如上所述。