16

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

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

所以我的问题是:

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

2 回答 2

24

美元符号

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

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

美元等号

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

这个脚本实际上做了什么

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

于 2013-04-11T14:04:55.707 回答
2

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

不过,我很确定在 周围加上引号是一个更好的主意scuba

于 2013-04-11T14:06:04.407 回答