网上搜到的, 全是说jquery中的this和$(this). 我的问题是,调用的方法已经是一个jquery对象了, 此时方法里的this和$(this)有什么区别. 具体看代码.
This is a test p
按照输出来看. 这两个都是jquery的实例对象, 而且看起来都指向了同一个对象, 但是又不相等. 用console.log()输出时看起来也只是个顺序的差别. 那么这两个对象到底是哪里存在差异呢?
按照我的理解,jquery构造函数, 可以接受选择器或者JS的DOM节点做参数, 生成一个jquery的实例对象, 但是当传入的参数本身就是一个jquery的实例对象的时候, 虽然不会报错, 但是生成的实例就不是传入的这个实例对象本身. 比如:
$(function(){
$("button").click(function(){
var t = document.getElementById("test");
$(t).hide();//成功隐藏
var d = $("#test");
$(d).hide();//能隐藏
});
});
上一个例子中, 显然this是指向了一个jquery的实例对象
新手初步刚刚接触jquery, 概念不清, 望指教.
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
第一个问题基本没区别 只有context可能变
$(this)的实现第二问题时因为你写错了...
var d = $("#test");//这个是ID选择器...