jQuery.js的on方法中的data参数有什么作用?什么场景下会使用到?

jQuery.js的on方法中的data参数,我是从来没有使用过,也不知道设计的时候加入这个参数的目的是什么?

这种写法:

$("div").on("click",{name:"hello"},function(e){
    console.log(e.data.name);
})

不如这种写法简洁一些:

var data={name:"hello"};
$("div").on("click",data,function(e){
    console.log(e.data.name);
})

那么,为什么不这样写,不是更为简洁吗?

var data={name:"hello"};
$("div").on("click",function(e){
    console.log(data.name);
})
阅读 3.8k
1 个回答

handler不是都是写成匿名函数的。

$(function() {
  var data = { name: 'hello' };
  $('div').on('click', data, onClicked);
});

function onClicked(e) {
  console.log(e.data.name);  // 'hello'
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题