this
<button onclick="nihao(this)">你好</button>
<script>
function nihao(obj){
console.log(obj);
console.log(this);
console.log($(obj));
console.log($(this));
}
</script>
浏览器显示:
jquery中的this
$()生成的是什么呢?实际上$()=jquery(),那么也就是说返回的是一个jquery的对象。
$(this)是jquery对象,能调用jquery的方法,例如click(), keyup()。
$(function () {
$('button').click(function () {
alert(this);//this 表示原生的DOM
//$(this)表示当前对象,这里指的是button
})
});
在许多情况下JQuery的this都指向HTML元素节点。
结论:
this,表示当前的上下文对象是一个html DOM对象,可以调用html对象所拥有的属性,方法。
$(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值。