【问题标题】:How to check if the OS handles certain URL protocols? (cross-browser)如何检查操作系统是否处理某些 URL 协议? (跨浏览器)
【发布时间】:2013-03-14 14:15:30
【问题描述】:
我已将我的 Cocoa 应用程序设置为 com_example_myapp: 协议的 URL 处理程序(使用 this great tutorial)。因此,Safari <a href="com_example_myapp://link"> 中的链接现在打开了我的应用程序。很酷。
但是在我在网络浏览器中给用户链接之前,我如何确定客户端的操作系统是否能够处理它?如何通过 JS(PHP,...)检查这个?
我找到了很多解决方案(主要针对 Mobile Safari),但找不到任何跨浏览器兼容的解决方案。
【问题讨论】:
标签:
javascript
macos
url
protocols
【解决方案1】:
据我所知,Chrome 不支持此功能。您可以尝试使用try/catch,但它不会返回任何内容。您可以使用其他参考资料并在他们的 Safari 中进行特定调用。
最后,我没有测试过,但是你可以绑定一些东西到window,看看是不是blurs。
$(window).blur(function() {
//code to see if it blurred on a setTimeout
}
然后记录创建它的日期,看看它是否在 1 秒内,这样当他们回来时,如果它还在,你可以销毁计时器。
只是想法......