Javascript 使用jQuery.on()方法通过命名函数传递数据
这可以通过使用匿名函数轻松实现,但是有没有更好的方法使用jQueryJavascript 使用jQuery.on()方法通过命名函数传递数据,javascript,jquery,function,variables,Javascript,Jquery,Function,Variables,这可以通过使用匿名函数轻松实现,但是有没有更好的方法使用jQuery.on()方法通过命名函数传递数据 $('#browser .next').on( 'click', function() { APP.search.page('next'); }); 但是从事件中删除匿名函数是困难的 当使用命名函数时,我可以通过首先传递事件,然后访问事件(event.data.page)中的数据来访问数据,但这会导致函数中的代码混乱 $('#browser .next').on( 'click'
.on()
方法通过命名函数传递数据
$('#browser .next').on( 'click', function() {
APP.search.page('next');
});
但是从事件中删除匿名函数是困难的
当使用命名函数时,我可以通过首先传递事件,然后访问事件(event.data.page)中的数据来访问数据,但这会导致函数中的代码混乱
$('#browser .next').on( 'click', { page: 'next' } , APP.search.page );
有没有更好的方法来传递数据,而不必像匿名函数那样通过事件访问数据?您可以使用bind方法
$('#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'})
);
如果确实使用命名函数,则可以使用$(this)