我使用JQuery 1.10.1
我注意到在Chrome版本中。 30改变了$('selector').width()
函数如何计算元素的实际宽度。例如,如果我有这样的元素:
...
<tr>
<td id="my">
some text123
</td>
</tr>
...
并执行$('#my').width()
它返回了一些正数,等于some text123
中px
的宽度。
然后,如果我使用$('#my').css('width', '1px')
设置宽度并执行$('#my').width()
,它仍然会返回一个正数,但是比之前少 - 现在它等于{{1}中text123
的宽度}}。这是一种理想的行为,并且工作了几个月。
现在执行px
时,$('#my').css('width', '1px')
会返回$('#my').width()
,或者如果执行1
,则结果为$('#my').css('width', '2px')
。事实并非如此,因为2
元素的实际宽度较大且等于<td>
中的text123
。
有人知道这是Chrome中的错误或所需行为吗?我已经尝试过IE 10,FF 24,Safari 5.1.7 - 所有这些浏览器中的px
功能都按预期工作。
谢谢
答案 0 :(得分:0)
在我提出这个问题后的一周内,Chrome团队已经解决了这个奇怪的行为。现在它的工作方式与预期的一样。