我正在尝试用类工具提示抓取我的div。
然后做一些像这样的事情:
var schemes = $(".tooltip");
for (var i in schemes) {
var scheme = schemes[i];
console.log(scheme.attr("cost"));
}
但是它抛出了上面的错误。我遗漏了什么?(我显然是javascript + jquery的新手)
发布于 2012-11-24 00:51:44
如果你使用for-loop
来迭代jQuery集,你应该使用eq()
方法来获取元素,而不是使用方括号表示法(即[]
)。像$(".tooltip")[i]
这样的代码将拾取DOM元素,但不会拾取jQuery对象。
var schemes = $(".tooltip");
for (var i = 0; i < schemes.length; i++) {
var scheme = schemes.eq(i);
console.log(scheme.attr("cost"));
}
但是,您可以始终使用each()
来迭代jQuery集:
$(".tooltip").each(function() {
var scheme = $(this);
console.log(scheme.attr("cost"));
});
发布于 2012-11-24 00:54:58
var schemes = $(".tooltip");
schemes.each(function(index, elem) {
console.log($(elem).attr('cost'));
});
作为附注,据我所知,“成本”对于任何元素都不是有效的属性,您可能应该使用数据属性。
https://stackoverflow.com/questions/13533089
复制相似问题