【发布时间】:2012-05-10 05:26:42
【问题描述】:
因此,当用户使用 Mac 时,我尝试将“关闭”按钮移动到左侧,而当用户使用 PC 时,我尝试将“关闭”按钮移动到右侧。现在我通过检查用户代理来做到这一点,但它很容易被欺骗而无法进行可靠的操作系统检测。是否有可靠的方法来检测运行浏览器的操作系统是 Mac OS X 还是 Windows?如果没有,还有什么比用户代理嗅探更好的呢?
【问题讨论】:
-
如果用户操纵了useragent,那不是他或她的问题吗?当 你 让他们有一个无效的用户代理(例如,当它让他们访问你不希望他们拥有的东西时)伤害他们时,我会担心它,但是对于这样的事情,为什么你有压力吗?让他们在脚上开枪,必须承担后果 - 伙计,不要流汗。
-
嗯,与其说是答案,不如说更像是一个提示。您可以使用条件 cmets 检测 IE。这是对 Windows 检测库的 +1。但如果 IE 在另一个操作系统(如 Linux 上的 Wine)的模拟器中运行,这将失败。对了,linux呢?
-
@MahmoudAl-Qudsi 即使没有欺骗,移动版 Firefox 也经常伪装成 Safari,Opera 在某些版本中经常伪装成 Firefox。如果不进行欺骗,用户代理仍然非常不可靠。
-
但这个问题的答案只是“用户代理”。
标签: javascript jquery