我在一段代码中遇到了以下内容:
var searchBox = $(this.element[0]);
我对 Javascript 和 jQuery 还很陌生。我试图理解它,但我很难。这一行是在 jQuery UI Accordion 小部件的实现中。
this
指的是什么?
此外,我对这条线进行了一些尝试,我了解到它可以完美地工作——无论数组中的数字是多少。此外,如果我删除括号并只写下一行,它就可以正常工作:
var searchBox = $(this.element);
什么意思,有什么区别?
非常感谢。 :)
编辑: 这是我的完整代码。也许它可以帮助。 https://jsfiddle.net/yx8puo2j/1/
最佳答案
var searchBox = $(this.element[0]);
返回一个元素(1个对象)。
var searchBox = $(this.element);
返回元素的列表。
这说明了 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
.
关于javascript - 在 jQuery 中, `this.element` 和 `this.element[/* some number */]` 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32090753/