zoukankan      html  css  js  c++  java
  • js_检测窗口弹出是否被禁止

    • window.open()方法会返回一个指向新窗口的索引。我们可以尝试使用该索引来调整新窗口的位置和大小。
    var wroxWin=window.open("http://www.baidu.com","_blank","location=0,width=400,height=400,resizeable=1");
    wroxWin.resizeTo(500,500);//窗口大小变为500x500
    wroxWin.moveTo(500,500)//新窗口左上角移动到屏幕的(500,500)处
    
    • 调用close()方法还可以关闭新打开的窗口
    wroxWin.close();
    
    • 大多数浏览器只允许通过用户点击的方式弹出窗口,例如以下代码的弹窗行为会被浏览器制止。
    <body>
        <script>
            window.onload=()=>{
                tanChu();
                function tanChu(){
                    var wroxWin=window.open("http://wwww.baidu.com","_blank");
                }
            }
        </script>
    </body>
    

    上面的代码实测在chrome、FF、Opera、Edge中均被拦截。

    • 弹出窗口屏蔽程序
      弹出窗口被屏蔽时考虑两种可能,一种是浏览器内置程序拦截,还有一种是浏览器插件拦截。

      • 当浏览器内置程序拦截时,window.open()会返回null。
      • 当浏览器插件拦截时,window.open()会报错。
    • 准确地判断弹窗是否被拦截

    var blocked=false;
    try{
        var worxWin=window.open("http://www.baidu.com","_blank");
        if(worxWin==null){
            blocked=true;
        }
    }catch(ex){
        blocked=true;
    }
    if(blocked){
        alert("窗口被制止弹出");
    }
    
  • 相关阅读:
    面向对象设计与实用的思考(主动对象与被动对象)
    改进弧长法 判断点是否在多边形内 c#代码
    PaintCode begin
    kiwivm putty lnmp
    初心已变,我也不是当时的我
    spfa
    tree dp
    开心就好之修行ing
    MIME 参考手册
    TypeScript学习和参考手册
  • 原文地址:https://www.cnblogs.com/Syinho/p/12383604.html
Copyright © 2011-2022 走看看