浏览器功能检测 - Silverlight是否受支持?

4
我非常支持特性检测,而不是设备检测。我希望能够检测浏览器(移动或其他)是否支持Silverlight。
我已经用谷歌搜索并找到了这个Silverlight支持的用户代理,但看最后一条评论似乎不是最新的。
还有这个SO问题如何测试浏览器是否支持flash/silverlight?但它似乎没有回答我的问题。检测Silverlight是否已安装与检测对Silverlight的支持是不同的。
有人有这方面的经验吗?是否可能呢?

2
我认为移动设备的答案可以硬编码为 return false; :-) - Pointy
2
Silverlight不是“浏览器功能”,而是插件。您需要找出每个浏览器如何向JavaScript公开此信息(如果有的话)。 - Matt Holmes
是的,@MattHolmes说得很好,这是一个插件,可能会使支持检测变得困难。 - Colin Bacon
1个回答

1
检测Silverlight是否已安装与检测对Silverlight的支持不同。 这确实是不同的。Opera没有“支持”,但可以很好地运行Silverlight :) 使用Silverlight.js中的Silverlight.isInstalled来检查是否已安装Silverlight(请参见:http://developer.yahoo.com/dotnet/silverlight/embedding.html)。有没有什么原因不足以满足您的需求? 如果您必须创建一个关于哪些浏览器与Silverlight兼容的数据库,则建议利用crossbrowsertesting.com

1
如果我使用 isInstalled,那么在支持方面,这不会给我正确的结果,对吗?如果浏览器不支持 Silverlight,我需要为用户显示不同的体验。 - Colin Bacon
@ColinBacon 我不明白你为什么要这样做。只需告诉他们安装Silverlight和/或使用支持它的浏览器(甚至不要列出它们,因为列表会改变)。也许如果检测到Linux或移动操作系统(它们绝对不支持Silverlight并且永远不会),那么告诉他们使用受支持的操作系统。如果您有JavaScript回退,则在所有情况下都提到它。不要试图太聪明。只需给用户选项即可。 - Aleksandr Dubinsky

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接