Javascript 方向更改时的外径和外径更改结果

Javascript 方向更改时的外径和外径更改结果,javascript,screen-orientation,Javascript,Screen Orientation,使用window.outerWidth和window.outerHeight时,我遇到了一个奇怪的结果。我只是简单地将平板电脑的分辨率打印到网页上,这样我就可以看到媒体查询的目标尺寸 当我以纵向方式加载网页时,会得到360x559。在横向时,我希望得到559x360,但得到的是640x279 我怀疑这是因为Chrome应用程序中的导航栏,但我无法确认 代码非常简单: <span id="res"></span> ... <script> $(funct

使用
window.outerWidth
window.outerHeight
时,我遇到了一个奇怪的结果。我只是简单地将平板电脑的分辨率打印到网页上,这样我就可以看到媒体查询的目标尺寸

当我以纵向方式加载网页时,会得到
360x559
。在横向时,我希望得到
559x360
,但得到的是
640x279

我怀疑这是因为
Chrome
应用程序中的导航栏,但我无法确认

代码非常简单:

<span id="res"></span>
...
<script>
    $(function() {
        $("#res").text(window.outerWidth + "x" + window.outerHeight);
    });
</script>

...
$(函数(){
$(“#res”).text(window.outerWidth+“x”+window.outerHeight);
});
我只有一个元标记:

<meta name=viewport content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">

这是在同一问题的多个Android设备上的Chrome上测试的


有人能解释一下为什么乍一看结果如此令人讨厌吗?

我似乎无法重现。你能同时发布你所有的元标签吗?更奇怪的是Chrome提供的设备模拟器工作正常。我正在测试的设备比较旧,没有最新版本的Android,所以我想知道这是否与此有关。该代码是否在
orientationchange
事件期间运行?如果是的话,我假设当方向没有完全更新时,它得到的是
outerHeight
outerWidth
。我可以复制相同的东西,并使用timeout修复它..不。它只是在页面加载时运行。如果我想测试方向的变化,我只是刷新页面。可能是页面尚未完全加载,但代码被包装在
.ready()
速记中。让我把它设为5秒超时,看看会发生什么。:)同样的结果。太奇怪了。我会留下这个问题,以防有人能重复这个问题。我觉得奇怪的是你不能。