在 jQuery 中,`this.element` 和 `this.element[/* some number */]` 有什么区别?
In jQuery, what is the difference between `this.element` and `this.element[/* some number */]`?
我在一段代码中遇到了以下内容:
var searchBox = $(this.element[0]);
我是 Javascript 和 jQuery 的新手。我试图理解它,但我很难。此行是 jQuery UI 手风琴小部件的实现。
this
指的是什么?
另外,我玩了一下这条线,我开始理解它工作得很好——不管数组中的数字是多少。此外,如果我删除括号并只写下一行,它就可以正常工作:
var searchBox = $(this.element);
什么意思,有什么区别?
非常感谢。 :)
编辑:
这是我的完整代码。也许它可以帮助。 https://jsfiddle.net/yx8puo2j/1/
当你使用
var searchBox = $(this.element[0]);
您选择第一个
element
of "This" 其中 "This" 是您当前所在的元素,例如 div 或输入字段
我不能告诉你这是什么,但我可以解释一下发生了什么以及它为什么起作用:
在 jQuery 中,您可以 select 具有 $("")
的任何元素,但是如果您 select 一个 class 在 DOM??
所以我得到了这个按钮 class 在文档中存在 5 次,我 select 它与 $(".button")
。现在 returns 一个包含 5 个项目的数组。
如果我们想要 select 第一个按钮 $(".button[0]")
如果我们想要 select 第五个按钮 $(".button[4]")
所以基本上你是 select 在具有该特定标识符的页面中添加元素 n。
var searchBox = $(this.element[0]);
returns 一个个元素(1个对象)。
var searchBox = $(this.element);
return 列表 个元素。
这表示 classes
,而不是 id
(因为 id
是唯一的).
Examples:
var searchbox = $(this.angry_button)
returns all (list) elements with class angry_button
.
var searchbox = $(this.angry_button[0])
returns the first element with class angry_button
.
var searchbox = $(this.angry_button[1])
returns the second element with class angry_button
.
我在一段代码中遇到了以下内容:
var searchBox = $(this.element[0]);
我是 Javascript 和 jQuery 的新手。我试图理解它,但我很难。此行是 jQuery UI 手风琴小部件的实现。
this
指的是什么?
另外,我玩了一下这条线,我开始理解它工作得很好——不管数组中的数字是多少。此外,如果我删除括号并只写下一行,它就可以正常工作:
var searchBox = $(this.element);
什么意思,有什么区别?
非常感谢。 :)
编辑: 这是我的完整代码。也许它可以帮助。 https://jsfiddle.net/yx8puo2j/1/
当你使用
var searchBox = $(this.element[0]);
您选择第一个
element
of "This" 其中 "This" 是您当前所在的元素,例如 div 或输入字段
我不能告诉你这是什么,但我可以解释一下发生了什么以及它为什么起作用:
在 jQuery 中,您可以 select 具有 $("")
的任何元素,但是如果您 select 一个 class 在 DOM??
所以我得到了这个按钮 class 在文档中存在 5 次,我 select 它与 $(".button")
。现在 returns 一个包含 5 个项目的数组。
如果我们想要 select 第一个按钮 $(".button[0]")
如果我们想要 select 第五个按钮 $(".button[4]")
所以基本上你是 select 在具有该特定标识符的页面中添加元素 n。
var searchBox = $(this.element[0]);
returns 一个个元素(1个对象)。
var searchBox = $(this.element);
return 列表 个元素。
这表示 classes
,而不是 id
(因为 id
是唯一的).
Examples:
var searchbox = $(this.angry_button)
returns all (list) elements with classangry_button
.var searchbox = $(this.angry_button[0])
returns the first element with classangry_button
.var searchbox = $(this.angry_button[1])
returns the second element with classangry_button
.