function IsExist(url,method) { $.ajax({ url: url, type: 'GET', complete: function(response) { if(response.status == 200) { method(true); } else { method(false); } } }); } function windowopen(url){ IsExist(url,function(check){ if(check){ var blocked = false; try { var wroxWin = window.open(url, "_self"); if (wroxWin == null) { blocked = true; } } catch (ex) { blocked = true; } if (blocked) { alertshow("您得浏览器禁止了弹窗,请到设置中取消禁止项."); }else{ hide_login(); } }else{ alertshow('对不起,暂无任何下载资源...'); } }); }
其中alertshow()是我自己写得弹出框方法,不用在意。
如果你得url只是一个下载地址得话, 以上方法可以拿来直接用。调用形式如下:
windowopen(url);
= = .是不是很简单.. windowopen方法判断浏览器是否禁用了弹窗。值得注意得是,
window.open(url, "_self"); 这里得'_self'并不是新打开一个窗口。 所以可能无论如何,你都检测不到弹出窗体被禁用得情况。
如果你想看到效果,可以把self 改称'_blank'或者其他你知道的...0.0 。
欢迎讨论。
参考资料包括有:1. 判断浏览器弹窗是否被屏蔽
2. 判断地址是否有效