2

$.each()循环中,有一个特定的案例我不明白为什么会失败。

当我做一个这样的 if 语句时(我的具体例子,只有没有真实的属性名称)

if(($(this).attr("some-attribute")))

无论属性是否存在,它总是返回 false。

但是,如果我首先获取此元素的 id,然后检查没有“this”关键字的属性,它就可以正常工作。

var id = $(this).attr("id");
if(($("#"+id).attr("some-attribute")))

这工作正常,它确实返回正确的值。

4

1 回答 1

6

$(this)不查询 DOM,它只是用 jQuery 对象包装了 javascript DOM 元素。

$('#id')查询 DOM。

我建议你在这里阅读我的答案

于 2012-10-16T01:20:57.667 回答