我使用 JQuery 1.10.1
我在 Chrome 版本中注意到了这一点。30 改变了$('selector').width()
函数计算元素实际宽度的方式。例如,如果我有这样的元素:
...
<tr>
<td id="my">
some text123
</td>
</tr>
...
并执行$('#my').width()
它返回一些正数,等于some text123
in的宽度px
。
然后,如果我设置宽度$('#my').css('width', '1px')
并执行$('#my').width()
它仍然返回一个正数,但比以前少 - 现在它等于text123
in的宽度px
。这是一种理想的行为,并且工作了几个月。
现在什么时候执行$('#my').css('width', '1px')
返回$('#my').width()
,1
或者如果执行$('#my').css('width', '2px')
结果是2
。这是不正确的,因为<td>
元素的实际宽度更大并且等于text123
in px
。
有谁知道这是 Chrome 中的错误或期望的行为?我已经尝试过 IE 10、FF 24、Safari 5.1.7 -$('#my').width()
所有这些浏览器中的功能都按预期工作。
谢谢