jquery$(这个)是如何存储的?

jquery$(这个)是如何存储的?,jquery,Jquery,参见基本示例: <div id="cont"> <input type=button value='button'> </div> <input type=button value='button'> 在这两个按钮中,根据console.log,单击$(此)的值是相同的: [<input type=​"button" value=​"button">​] [​] 为什么他们给出的结果仍然不同 换句话说,当我控制台日

参见基本示例:

<div id="cont">
   <input type=button value='button'>  
</div>
<input type=button value='button'> 
在这两个按钮中,根据console.log,单击
$(此)
的值是相同的:

[<input type=​"button" value=​"button">​] 
[​] 
为什么他们给出的结果仍然不同


换句话说,当我控制台日志$(this)时,某些信息并不表示。这些信息可能指向元素的唯一id。但是它是什么,它存储在哪里?为什么它没有显示在日志中?

由于按钮具有相同的标记,所以它看起来只是相同的


它看起来是一样的,因为按钮具有相同的标记


我想我理解你的要求。在jQuery函数中使用
这个
与事件发生的元素有关。在你的例子中,点击事件发生的特定输入。虽然两个输入都有相同的HTML,但它们是不同的元素。因此,如果你点击
之外的一个元素
div
console.log($('#cont')。has($(this)))
不应返回任何内容。

我想我理解您的要求。在jQuery函数中使用
与事件发生的元素相关。在您的情况下,单击事件发生的特定输入。虽然两个输入具有相同的HTML,但它们是不同的元素。因此,如果您单击
console.log($('#cont').has($(this));
不应返回任何内容。

根据API规范

给定一个表示一组DOM元素的jQuery对象,.has()方法从匹配元素的子集构造一个新的jQuery对象。提供的选择器将根据匹配元素的后代进行测试;如果其任何后代元素与选择器匹配,则该元素将包含在结果中

“$('#cont').has($(this))”的返回结果不是布尔值,而是匹配的对象

在本例中,id为“cont”的div包含第一个按钮,但不包含第二个按钮


因此,按第一个按钮返回has函数中的containg div&按第二个对象不返回div,因为根据API规范,div不包含按钮

给定一个表示一组DOM元素的jQuery对象,.has()方法从匹配元素的子集构造一个新的jQuery对象。提供的选择器将根据匹配元素的后代进行测试;如果其任何后代元素与选择器匹配,则该元素将包含在结果中

“$('#cont').has($(this))”的返回结果不是布尔值,而是匹配的对象

在本例中,id为“cont”的div包含第一个按钮,但不包含第二个按钮


因此,按下第一个按钮将返回has函数中包含的div&按下第二个对象将不返回div,因为div不包含按钮

它应该绑定click with按钮,并且单击具有相同名称和类型的按钮将产生相同的输出为这些按钮添加一些标识符,如id,然后检查它们是否存在有意地,相同的对象是
console.log({})
console.log({})
,但它们都引用不同的对象(即
{}!=={}
)我在寻找区别,它存储在哪里,或者它是如何工作的。它应该,你绑定click with按钮,点击一个具有相同名称和类型的按钮应该有相同的输出,给那些按钮添加一些标识符,比如id,然后检查它们是否故意相同,即
console.log({})
console.log({})
但是它们都指向不同的对象(即
{}!=={}
),我在寻找差异,它存储在哪里,或者它是如何工作的。
[<input type=​"button" value=​"button">​]