在IE中使用JavaScript的Windows中可以使用任何检测URI模式的方法

sha*_*thi 11 javascript windows internet-explorer uri launching-application

我找到了几种方法来检测Firefox和Chrome浏览器的窗口支持当前URI方案,如果应用程序未注册,我将下载并注册这些应用程序uri

 var appWindow = window.open('alert:"Hello%20World"',"_self");
 if(appWindow!=null){alert("it is worked")}
Run Code Online (Sandbox Code Playgroud)

火狐

 $("body").append('<span id="__protoProxy"></span>');

function queryWord(aWord)
{
 var protoProxy = document.getElementById('__protoProxy');
 if (protoProxy)
 {   
  var word = aWord.replace('"','\"');
  protoProxy.innerHTML = '<div style="display:none;"><iframe id="iframe01" src="alert://'+ word + '"></iframe></div>';
 }
}
queryWord('hello world');
if(document.getElementById('iframe01').contentDocument.body.innerHTML!=""){alert("it is worked")}
Run Code Online (Sandbox Code Playgroud)

IE

但在IE中我无法执行此操作,即使URI未在Windows中注册,IE打开窗口从Windows商店中选择应用程序.

有没有办法在IE中检测?

是否有任何方法可以在所有浏览器中检测到它?

Citrix发射器如何在所有浏览器中运行?

Que*_*rks 0

这个问题似乎是重复的,但是由于有赏金,我收到一条无法关闭的错误。

无论如何,请查看此线程并看看它是否适合您。

关联。