jQuery事件参数传递的解读
jQuery提供了一系列便捷事件监听的方法,该方法同时允许传递一个参数,可以通过以下代码来了解:
HTML部分:
```<div>jQuery事件参数解读</div>
JS部分:
$("div").click(999,function(event){
alert(event.data);
})
那么引出本文的问题:
- click方法内函数的event是什么?
当click方法调用函数时,会默认返回一个事件对象作为该函数的参数,这里的event就是该事件本身。 - event.data中的data又是什么?
click返回的事件中,默认添加了一个data属性,如果我们在.click()方法中尝试传入参数的时候,该参数将被传递给data属性,同理,我们在调用这个属性的时候,也必须指定该属性的对象是谁,所以才使用 event.data 这句来调用该属性。
那么?data是用来承载参数的事件的属性,那么data是什么类型呢?
data实际上是一个对象,因为对象可以拥有各种属性和方法,那么我们也可以将data的对象属性进行扩展,如下面的代码:
var userObj = {name:"imooc",age:999}
$("div").click(userObj,function(event){
alert(event.data.name); //输出 imooc
})
以上可以得出结论:
- click方法,调用函数的时候,会默认返回事件对象和该事件对象的data属性;
- 如果需要使用该事件对象,必须给该事件对象命名,即函数中的参数;
- .click方法,传入的任何参数或对象,都会被赋值给data属性,所以调用的时候,必须使用 data 来调用
点击查看更多内容
5人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦