我在表中有许多具有可变宽度的元素,由其各自父级的数据属性指定:百分比=“10”或百分比=“20”等。如何设置每个元素的宽度取决于其父级的数据属性?为了清楚起见,这是我的代码:断续器<td percent="10"><div class="bar"></div></td><td percent="20"><div class="bar"></div></td><td percent="30"><div class="bar"></div></td>爪哇脚本$('.bar').css('width', $(this).parent().attr('percent')+'%');当然,$(this)关键字在这里不起作用,因为它不是在事件中定义的。我怎样才能做到这一点?
1 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
使用函数参数执行每个元素的代码。
$('.bar').css('width', function() {
return $(this).parent().attr('percent')+'%';
});
顺便说一句,您不应该创建非标准属性。如果需要自定义数据,请使用数据属性:
<td data-percent="10"><div class="bar"></div></td>
<td data-percent="20"><div class="bar"></div></td>
<td data-percent="30"><div class="bar"></div></td>
然后使用$(this).parent().data("percent")
添加回答
举报
0/150
提交
取消