所以我试图在我的网站上重定向移动页面。如果有人在移动设备上,那么它会将它们发送到移动网站而不是桌面网站。它适用于Chrome。但是,它不适用于macOS Safari。知道为什么吗? JavaScript如下:
<script>
if (screen.width <= 420) {
document.location="mobileindex.html";
}
</script>
答案 0 :(得分:2)
screen.width
返回屏幕宽度,而不是浏览器窗口。这很好,因为这意味着我们无法将用户错误地重定向到移动网站。
在Chrome中,我们可以使用设备模拟器测试我们的逻辑是否正常工作。在设备模拟器中加载页面时,screen.width
将返回正在模拟的设备的宽度,而不是主机的屏幕。
但是,在Safari中,相应的响应式设计模式不能以这种方式工作。 screen.width
将始终返回Safari中计算机显示器的宽度,而不是模拟设备的宽度。
换句话说,这是Safari实施的问题,而不是您的代码。它可以在实际的移动设备上正常工作。