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("窗口被制止弹出");
    }
    
  • 相关阅读:
    Druid数据库密码加密
    jenkins 构建时不能自动结束的问题
    4、TypeScript 类
    3、TypeScript 函数
    2、Typescript 中的数据类型
    1、TypeScript安装、开发工具
    Markdown 基本格式
    解决邮箱下载下来的word打不开的问题
    winform在禁用控件上显示工具提示
    日常问题集
  • 原文地址:https://www.cnblogs.com/Syinho/p/12383604.html
Copyright © 2011-2022 走看看