2011-01-07 88 views
7

jQuerys偏移量函數有時會返回頂部或左側的有理數(如12.645613)。我認爲頂部和左側的位置是以像素爲單位的,所以應該是整數(沒有半像素,或?)。jQuery中的非整數偏移位置

+1

真的嗎?你能舉一個例子嗎? – SLaks 2011-01-07 14:32:03

+0

什麼函數返回這樣一個數字? – 2011-01-07 14:32:59

回答

5

頂部和左側位置可以是具有cm,mm,in,pt,pc,em,ex或px或百分比中的任何一個的浮點數。

實施例:

.someElement { top: 42%; left: 3.14in; } 

offset函數返回翻譯成像素位置,使得能夠很好地是浮點數。值不是四捨五入。

用給出的例子,如果父級的高度例如是32像素,則該元素的值將是32 * 0.42 = 13.44像素。

-1

這是一個古老的問題,但我想我可以在這裏發表一個答案,爲後人。

我也有這個問題,我發現(感謝Firebug)問題在於,h1和h3標籤有浮點邊距(例如,默認情況下,Firefox給出<H1> a 0.67em 0 margin)。

當您刪除<H1><H3>標籤$(".fixedColumn").eq(0).offset().top返回一個整數。您可以爲這些標籤指定邊距,並且應該修復問題。