window.innerHeight如何处理舍入?

时间:2015-01-26 12:55:16

标签: javascript html

我有一个页面,我想使用窗口的高度来限制我对rangeForCoordinates()的使用。例如:

var windowHeight = window.innerHeight;
var test = rangeForCoordinates(x, windowHeight-1);

我找到了一些屏幕密度导致舍入的Android手机,例如:

// device screen density: 1.33
// webview height in pixels: 610 pixels
// window.innerHeight gives me: 459 
//  (610 / 1.33) = 458.64... and rounded up

现在如果我尝试使用那个高度作为天花板,我会得到一个没有任何意义的交叉元素:

// incorrect element returned
var test = rangeForCoordinates(x, 459-1);

如果我改用地板而不是舍入值,它可以正常工作:

// ok
var test = rangeForCoordinates(x, 458-1);

有没有办法在没有应用这种舍入的情况下获得窗口的高度?看起来459已经超出界限。

我希望rangeForCoordinates()在超出边界坐标的情况下返回null,但在某些设备上看起来并非如此。

由于

0 个答案:

没有答案