我的 Web 应用程序需要检测我们的桌面应用程序是否安装在用户的 PC 上。(此应用程序是通过自定义应用程序协议从 Web 应用程序启动的。)我们目前有一个“hack-ish”方法工作,但它在 IE10 中被破坏了。做了一些研究,我发现了这篇文章。
在底部,它解释了如何在 Windows 8 和 IE10 上,您现在可以使用 javascript 检测特定的应用程序协议处理程序。可以在此站点上找到更多详细信息:msProtocols 属性。根据示例,我应该能够执行以下操作:
if (navigator.msProtocols["myProtocol"]) {
location.href = "myProtocol://<Some path under the myProtocol protocol>";
} else {
// Fallback code for when the "myProtocol" protocol doesn’t exist.
}
我试图让这个工作,但失败了。即使使用调试器并查看导航器对象,也没有 msProtocols 属性。
有没有人能让这个工作?