这可以通过使用匿名函数轻松实现,但是有更好的方法使用jQuery .on()
方法通过命名函数传递数据吗?
$('#browser .next').on( 'click', function() {
APP.search.page('next');
});
但是从事件中删除匿名函数很困难。
当使用命名函数时,我可以通过首先传递事件然后访问事件中的数据(event.data.page)来访问数据,但这会在函数中产生一些混乱的代码。
$('#browser .next').on( 'click', { page: 'next' } , APP.search.page );
有没有更好的方法来传递数据而不必通过事件访问它,这可以在匿名函数中实现?
答案 0 :(得分:0)
您可以使用绑定方法
$('#browser .next').on(
'click',
APP.search.page.bind(APP.search.page,
'next')
);
或
您可以将任何类型的数据作为参数传递
$('#browser .next').on(
'click',
APP.search.page.bind(APP.search.page,
{some: 'value'})
);