Javascript 为什么window.screen在macOS safari上不起作用
所以我尝试在我的网站上重定向手机页面。如果有人在移动设备上,那么它会将他们发送到移动站点而不是桌面站点。它在铬上工作。但是,它在macOS Safari上不起作用。知道为什么吗?JavaScript代码如下所示:Javascript 为什么window.screen在macOS safari上不起作用,javascript,html,safari,Javascript,Html,Safari,所以我尝试在我的网站上重定向手机页面。如果有人在移动设备上,那么它会将他们发送到移动站点而不是桌面站点。它在铬上工作。但是,它在macOS Safari上不起作用。知道为什么吗?JavaScript代码如下所示: <script> if (screen.width <= 420) { document.location="mobileindex.html"; } </script> 如果(screen.widthscree
<script>
if (screen.width <= 420) {
document.location="mobileindex.html";
}
</script>
如果(screen.widthscreen.width
返回屏幕的宽度,而不是浏览器窗口的宽度。这很好,因为这意味着我们不能错误地将用户重定向到移动站点
在Chrome中,我们可以使用设备模拟器测试我们的逻辑是否工作。当在设备模拟器中加载页面时,screen.width
返回被模拟设备的宽度,而不是主机的屏幕
但是,在Safari中,相应的响应设计模式不会以这种方式工作。screen.width
将始终返回Safari中计算机显示器的宽度,而不是模拟设备的宽度
换句话说,这是Safari实现的问题,而不是你的代码。它在实际的移动设备上可以正常工作。nice,而不是screen.width
,你可以使用window.innerWidth
@Mosijava,我会小心处理,或者至少根据浏览器的不同,混合使用它们,你不会得到相同的结果。