当我设置一个CSS属性为浮点值,就像这样:jQuery的CSS(),偏移量()及位置()函数不返回CSS属性的小数部分
$('#div').css('left', 123.1234567);
检查# DIV的DOM显示左侧设置为123.1234567px
,但所有这三个:
回报123px整数值。
是jQuery试图过于聪明,还是它掩盖了浏览器中的脆弱?浏览器是否支持div的子像素定位?如果我使用画布标签,他们会吗?
当我设置一个CSS属性为浮点值,就像这样:jQuery的CSS(),偏移量()及位置()函数不返回CSS属性的小数部分
$('#div').css('left', 123.1234567);
检查# DIV的DOM显示左侧设置为123.1234567px
,但所有这三个:
回报123px整数值。
是jQuery试图过于聪明,还是它掩盖了浏览器中的脆弱?浏览器是否支持div的子像素定位?如果我使用画布标签,他们会吗?
我不知道为什么你的代码不工作,我试着在JSFiffle上的那个似乎工作正常。
我相信这是关系到jQuery中的已知的bug。见http://bugs.jquery.com/ticket/9628。
我对jQuery的height()
有同样的问题。
Why does jQuery's height() automatically rounds up the value?
jQuery在没有单位时默认为px。 AFAIK,也没有小数像素。 – Joseph 2012-04-27 05:42:00
这可能有助于分数定位:http://stackoverflow.com/questions/4308989/are-the-decimal-places-in-a-css-width-respected – 2012-04-27 05:43:01
@Christian Varga:这个问题无关紧要用jQuery的DOM样式实现。不是重复的。 – BoltClock 2012-04-27 05:43:41