我想将指定的标签文本设置为span width 这是代码。谢谢你的帮助。
function setBarWidth(labelText, barElement, cssProperty, barPercent) {
var listData = [];
$(labelText).each(function () {
listData.push($(this).textContent);
});
var listMax = Math.max.apply(Math, listData);
$(barElement).each(function(index) {
$(this).css(cssProperty, (listData[index] / listMax) * barPercent + "%");
});
}
setBarWidth(".style-1 span label", ".style-1 em", "width", 100);
setBarWidth(".style-2 span label", ".style-2 span", "width", 55);
答案 0 :(得分:1)
textContent
是一个DOM属性,但$(this)
是一个jQuery对象。您应该使用this.textContent
或$(this).text()
。
您也可以将.each
替换为.map
var listData = $(labelText).map(function() {
return this.textContent;
}).get();
最后需要 .get()
将jQuery集合转换为普通数组。