您现在的位置: 首页div+css>正文
弹出窗口被拦截提示后给用户提示的JS
2012年06月07日 div+css 评论数 1

第一种JS写法:

现在的浏览器对弹出窗口的封杀已经是草木皆兵了.很多有用的弹出窗口都被封.
这个时候就需要给用户一个明确的提示,让用户知道发生了什么.
目前看到的网站只有gmail有这个提示.今天突发兴趣就研究了一下.
总结了下面这段测试代码.
 
function opentest() {
 var win = window.open('test.htm','test','toolbar=yes,location=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width=100,height=100');
 if(win==null)
 {
  alert('您的浏览器阻止了一个弹出窗口!');
 }
}

 

第二种JS写法:

如果浏览器将该弹出窗口实例拦截,window.open()返回的实例将为null,这时再对这个实例执行focus(),必然要抛出异常。这里也可以单纯来比较实例的值来判断,而不用异常。

function testpop(){

var mypop=window.open("http://www.google.com.hk","_blank","z-look=yes,menubar=no,toolbar=no, location=no,resizable=yes ,directotries=no,status=no,width=800px,height=600px,scrollbars=no");                try{           
       mypop.focus();//
     }catch(e){
        alert('blocked');//显示任何你愿意让用户看到的信息
     }

}

ps:ie6.0,7.0,8.0测试通过。在firefox,google chrome设置了禁止弹出后,这个窗口照样弹出,不知为何

目前有 1 条留言 其中:访客:1 条, 博主:0 条

  1. 曙光群发技术 : 2012年09月22日19:57:04  -29楼 @回复 回复

    确实不错,不过很快谷歌就不支持IE8以前的版本了

给我留言