【发布时间】:2013-06-25 10:16:05
【问题描述】:
我有一个我在 2009 年构建的 Silverlight 应用程序。不幸的是,Silverlight 不适用于 64 位浏览器。而且 64 位浏览器的使用量刚刚开始增长,尤其是随着 Windows 8 的发布。所以我想检测 64 位浏览器并提供一条用户友好的消息,说明应用程序无法加载的原因。
我可以用一点 Javascript 来实现这一点,但用户代理等似乎无处不在。我已经尝试过navigator.cpuClass,这似乎可以在 Internet Explorer 中完成我想要的操作。它在 32 位版本的 IE10 上返回 x86。但它在 Chrome 和 Firefox 中返回 undefined。因此,我正在寻找适用于所有浏览器的可靠解决方案。
请注意,我不在乎操作系统是否为 64 位。那没关系。我只关心浏览器。
【问题讨论】:
-
不检测操作系统/浏览器,为什么不检测实际的silverlight插件是否存在?类似stackoverflow.com/questions/119980/…
-
你想如何处理这种情况:Silverlight 没有安装但是浏览器是 32 位的?
-
请重新打开。标记为重复的问题不是重复的。
-
@SteveWortham 检查上述问题的answer。看起来
window.navigator.platform反映了浏览器是否以32或64位运行,所以这个问题(即使不是重复的)可能仍然有帮助。 -
嗯,Silverlight 5 在 64 位浏览器上运行良好! IE 9:i.imgur.com/fccYxu1.png 和 Pale Moon(64 位 Firefox):i.imgur.com/9jOGaIK.png 这是在 Windows 7 SP1 上。我认为它适用于 Windows 8,但我可能是错的。
标签: javascript silverlight browser