У меня есть следующий код:Pass объект в качестве параметра
$('.helloWorld').on('click', function() {
$(this).css('background', 'black');
});
Вместо этого, я хотел бы сделать что-то вроде этого (для исследования):
var params = [
'click',
function() {
$(this).css('background', 'black');
}
];
$('.helloWorld').on(params);
Я получаю сообщение об ошибке, что читает, " Uncaught SyntaxError: Неожиданный токен,. "
Возможно ли это? Если да, то как?
возможно дубликат [Вызов динамической функции с помощью динамических параметров в JavaScript] (http://stackoverflow.com/questions/676721/calling- dynamic-function-with-dynamic-parameters-in-javascript) – dave
Я думаю, вам нужно использовать что-то вроде '$ .fn.on.apply ($ (". selector "), params);', но я могу быть выключен – Ian
Вопрос в том, почему вы используете массив? Пока массив выглядит так, только с одним событием вы можете использовать 'apply', но гораздо проще использовать объект, таким образом вы можете добавить столько событий и обратных вызовов, сколько хотите? – adeneo