使用$()函数保存变量时会感到困惑

时间:2011-01-06 21:01:31

标签: jquery

在jQuery中,如果我这样做:

var a = $("#someid");

现在当我需要使用jQuery进一步引用时,我该怎么办?

$(a).attr("id");

a.attr("id");

我正在测试一些东西而且我感到困惑,只是想要官方的话,所以我可以排除它。

3 个答案:

答案 0 :(得分:9)

这一个:

a.attr("id");

因为a已经是一个jQuery对象。

尽管许多人使用这种约定来引用带有$的jQuery对象的变量。

所以:

var $a = $("#someid");
$a.attr("id");

这只是一个共同的惯例,而不是一项要求。我认为它增加了清晰度,但这可能只是因为我现在很有条件寻找$

答案 1 :(得分:3)

两者都有效但$(a)无效,因此浪费了函数调用。

答案 2 :(得分:0)

使用您的示例,第二个选项是正确的。

var a = $("#someid");
a.attr("id");

您也可以使用第一个选项,但因为a已经是一个jquery对象,所以它毫无意义。