美元符号在jQuery中的属性选择器中意味着什么?

有这个jQuery似乎寻找id="scuba"所有元素,但是它使用attr()来拉出id? “水肺潜水”可以成为身份证的一部分吗?attr会把整个身份证拉出来吗? 我从来没有在属性选择器中看到$,就像下面的例子一样。

 $('*[id$=scuba]').attr('id') 

所以我的问题是:

  1. 在这个例子中$$=做了什么
  2. 这段代码有什么作用?

美元符号

第一个$jQuery()函数的简写, jQuery对象构造函数 。

换句话说,它是一个名为$的变量,它被分配了一个名为jQuery的函数,如jQuery源代码的未明确版本中所示: window.jQuery = window.$ = jQuery;

美元等于标志

第二个$是名为Attribute Ends With Selector的jQuery选择器的一部分。 当在属性选择器中使用时, $=是逻辑运算符,字面意思是“ 如果左侧值以右侧值结束,则为true ”。

这个脚本实际上做了什么

总的来说,此代码段首先选择id属性以scuba结尾的任何元素。 然后,它从生成的jQuery对象中检索第一个元素的id值。

此代码选择具有以scuba结尾的id属性并返回其id值的所有DOM元素。

不过,我很确定在scuba加入引号是个更好的主意。