重定向javascript在除Chrome之外的所有浏览器中失败
如果deeplink无法打开,尝试让网页管理重定向。如果deeplink打开,那太好了。如果在2秒钟内没有,我希望它进入我的网站重定向javascript在除Chrome之外的所有浏览器中失败,javascript,internet-explorer,firefox,redirect,safari,Javascript,Internet Explorer,Firefox,Redirect,Safari,如果deeplink无法打开,尝试让网页管理重定向。如果deeplink打开,那太好了。如果在2秒钟内没有,我希望它进入我的网站 <script type="javascript"> setTimeout(function () { window.location = "http://mywebsite.com"; }, 25); window.location = "my://app"; </script> 我已经在Ch
<script type="javascript">
setTimeout(function () { window.location = "http://mywebsite.com"; }, 25);
window.location = "my://app";
</script>
我已经在Chrome上测试过了,它可以工作,但是Firefox、IE和Safari都阻止了这个脚本
有人知道如何处理这个问题吗?window.location.assignhttp:mywebsite.com可能是一个更好的选择,因为我相信调用该函数会触发一些额外的事件,从而使页面的生命周期易于管理 此外,除了Chrome之外,您还可以使用IFrame尝试启动协议处理程序。这将有助于防止页面变为空白和/或脚本因离开页面而停止
var createIframe = function(id, url, timeout, callback) {
var iframe;
iframe = document.createElement("iframe");
iframe.hidden = true;
iframe.id = id;
iframe.src = url;
var data = {}
data.id = id;
data.iframe = iframe;
return setTimeout(callback, timeout, null, data);
}
createIframe('tempFrame', 'http://mywebsite.com', 25, function(err, data) {
if(!err && data){
var iframe = data.iframe;
var id = data.id;
iframe = document.getElementById(id);
iframe.parent.removeChild(iframe);
}
else {
console.log('There was an error createing and removeing the iframe');
}
}
您是否尝试过window.location.href?那有用吗?是的,试过了。同样的错误也会发生。IE:阻止脚本,Firefox提供了一个错误,显示:地址不可理解。Chrome处理得很好。一开始你想要的地址是my://吗?