我有以下代码:
$('.helloWorld').on('click', function() {
$(this).css('background', 'black');
});
相反,我想做这样的事情(研究):
var params = [
'click',
function () {
$(this).css('background', 'black');
}
];
$('.helloWorld').on(params);
我收到的错误是" Uncaught SyntaxError:Unexpected token,。"
这可能吗?如果是这样,怎么样?
答案 0 :(得分:4)
您可以使用apply使用数组作为参数调用函数,但您需要指定thisArg
:
$.fn.on.apply( $('.helloWorld'), params );
答案 1 :(得分:3)
您在示例中使用的是数组。改为使用对象({}
而不是[]
)这样的事情应该有效:
var params = {
"event" : 'click',
"callback" : function () {
$(this).css('background', 'black');
}
};
$('.helloWorld').on(params.event, params.callback);