我试图用类工具提示来获取我的 div。
然后做这样的事情:
var schemes = $(".tooltip");
for (var i in schemes) {
var scheme = schemes[i];
console.log(scheme.attr("cost"));
}
但它会引发上述错误。我错过了什么?(我显然是 javascript + jquery 的新手)
我试图用类工具提示来获取我的 div。
然后做这样的事情:
var schemes = $(".tooltip");
for (var i in schemes) {
var scheme = schemes[i];
console.log(scheme.attr("cost"));
}
但它会引发上述错误。我错过了什么?(我显然是 javascript + jquery 的新手)
如果您使用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"));
});
var schemes = $(".tooltip");
schemes.each(function(index, elem) {
console.log($(elem).attr('cost'));
});
作为旁注,据我所知,“成本”不是任何元素的有效属性,您可能应该使用数据属性。