0

首先,我绝不是网页设计师,所以我几乎不知道自己在做什么。

我正在为 Unity Webplayer 应用程序开发 HTML/Javascript,试图让 Webplayer 占据浏览器的大部分(不是全部)可视区域。页面的<body>设置为没有边距也没有滚动条,

<body margin="0" marginwidth="0" marginheight="0" scroll="no">

我正在获取浏览器可视区域的值,如下所示,

winWidth = window.innerWidth;
winHeight = window.innerHeight;

我用这个来调用 Unity Webplayer,

unityObject.embedUnity("unityPlayer", "WebPlayer.unity3d", winWidth, winHeight, params);

使用此设置,一切似乎都可以正常工作。但是,当我乘以winWidthwinHeight整数(即 0.5 或 1.9)时,高度在 Firefox 12 中没有正确缩放。无论我输入的值如何,它总是相同的(错误的)垂直高度。在这张图片中,两者都乘以innerHeight并且,正如你所看到的,高度肯定是错误的——无论我乘以什么非整数,这都是错误的高度。 innerWidth0.9内部高度 * 0.9

此代码在 Chrome 19 和 IE 9 中运行良好。我该如何解决这个问题?

4

1 回答 1

1

我不知道确切的情况是什么,因为我不熟悉您使用的 Unity JavaScript 界面,但我认为您很有可能需要为播放器指定整数宽度和高度,而您的计算正在产生一个非整数。

简单地写Math.round(winWidth * 0.9)而不是winWidth * 0.9得到最接近的整数结果。

于 2012-06-04T21:32:59.603 回答