jqery中onclick="fun()"中的$(this)是什么
时间:2011-09-01
来源:互联网
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
function fun() {
alert($(this).length); // 1
alert($(this).val()); // 未定义
}
</script>
</head>
<body>
<input id="Button1" type="button" value="test" onclick="fun()"/>
</body>
</html>
作者: bingeng 发布时间: 2011-09-01
该回复于2011-09-01 15:34:34被管理员删除
- 对我有用[0]
- 丢个板砖[0]
- 引用
- 举报
- 管理
- TOP
|
#2楼 得分:0回复于:2011-09-01 15:36:22
|
作者: bingeng 发布时间: 2011-09-01
这里的this指的是IE的window对象,这是因为fun只是一个普通的函数。
$(this) 就是 window对象的jq包装集
一楼说的这种应该是函数不用于事件中的情况下,当i在<input>的点击事件中使用fun()的时候,$(this)是一个事件句柄,通过它可以得知触发这个事件的element元素的属性...!!
作者: jinkuang45 发布时间: 2011-09-01
这里调用fun方法之后,这个this对象就代表触发这个click事件的dom元素。
作者: koo42636880 发布时间: 2011-09-01
fun() 改成 fun.call(this)绑定当前element就对了
HTML code
<input id="Button1" type="button" value="test" onclick="fun.call(this)"/>
不过既然使用jquery,就应该用addEventListener/attachEvent 那套来绑定事件
JScript code
(function($){ $('#Button1').click(function(e){ }) })(jQuery)
作者: zhuhong639 发布时间: 2011-09-01
作者: foolbirdflyfirst 发布时间: 2011-09-01
作者: PoorChild 发布时间: 2011-09-01
JScript code
$(function(){ $("#Button1").click(function(){ }) })
这样写比较好
作者: MadEric 发布时间: 2011-09-01
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28