Javascript 如何知道移动设备是否显示桌面?

Javascript 如何知道移动设备是否显示桌面?,javascript,mobile,desktop,Javascript,Mobile,Desktop,我见过很多人询问如何检测设备是否为移动设备。一般来说,它们分为三类: 检查屏幕大小/视口 检查用户代理 使用库(例如)来处理浏览器功能 在尽我所能实施之后,我仍然遇到一种从未被问到或解决过的情况;在许多移动浏览器上,都有“请求桌面站点”(Chrome)“桌面模式”(Dolphin)或“桌面视图”(HTC Sense) 我选择了上面的策略#1,除非在桌面模式下查看页面,否则该策略有效。实现#2有缺点(欺骗、未催化的代理等) 在使用Javascript的移动浏览器上,是否有可靠的(跨浏览器)方法检测

我见过很多人询问如何检测设备是否为移动设备。一般来说,它们分为三类:

  • 检查屏幕大小/视口
  • 检查用户代理
  • 使用库(例如)来处理浏览器功能
  • 在尽我所能实施之后,我仍然遇到一种从未被问到或解决过的情况;在许多移动浏览器上,都有“请求桌面站点”(Chrome)“桌面模式”(Dolphin)或“桌面视图”(HTC Sense)

    我选择了上面的策略#1,除非在桌面模式下查看页面,否则该策略有效。实现#2有缺点(欺骗、未催化的代理等)


    在使用Javascript的移动浏览器上,是否有可靠的(跨浏览器)方法检测桌面模式?jQuery或其他库也可以,但它应该基于特性检测,而不是一系列用户代理

    网页无法检测设备是否为台式计算机。当“请求桌面站点”被启用时,手机的行为就像桌面一样。一种检查方法是检查设备的操作系统。但是,有些手机使用windows作为操作系统,因此这在windows手机上不起作用。

    大多数提供桌面模式选项的网站都有不同的移动和桌面URL。我认为你的问题需要更多的模块化。我们可以将用户的桌面模式首选项存储在cookie中,并根据用户的首选项加载样式表。@muratgozel,谢谢您的回复。请注意,我不是指网站内的链接;相反,移动设备可以在“模式”之间切换。此选项是浏览器应用程序的一部分,而不是网页。好的,那么很明显,除了Windows Phone之外,如何做到这一点,对于Windows Phone,可以检查宽度