zoukankan      html  css  js  c++  java
  • JS~模拟表单在新窗口打开,避免广告拦截

    说起广告拦截,这应该是浏览器的一个特性,它会将window.open产生的窗口默认为一个广告,将它进行拦截,但有时,这不是我们所希望的,有时,我们就是需要它在客户端的浏览器上弹出一个新窗口,以展示数据处理的更新结果,例如,一个创建商品的预览功能,它需要先保存数据,然后再在新窗口展示最新的信息,这种需求并不少,而大多数人的作法就是使用window.open去弹窗口,但它确实不是一种好的方式!

    新方式来了

    我们知道表单提交实际上可以把POST的结果响应到新窗口上,我们就是利用表单的这种性质,在JS中伪造一个form,来实现新窗口展示数据的功能  

           //伪装一下表单提交在新窗口
            function newWinUrl( url ){
                var f=document.createElement("form");
                f.setAttribute("action" , url );
                f.setAttribute("method" , 'get' );
                f.setAttribute("target" , '_black' );
                document.body.appendChild(f)
                f.submit();
            }

    在程序调用它时,可能有这样的代码

           //预览功能
            $("#do").click(function () {
                $ajax({
                    type: "get",
                    data: {},
                    success: function (data) {
                        newWinUrl(url + data);
                    }
                });
    
            });

    0了,可以进行测试了.

  • 相关阅读:
    Pika的设计及实现
    高性能网络编程
    C语言的结构体
    消息队列库——ZeroMQ
    Diffie-Hellman密钥交换算法
    mysql-proxy 读写分离
    位运算
    分布式学习之一:事务
    Redis Cluster
    SpringBoot整合ActiveMQ,看这篇就够了
  • 原文地址:https://www.cnblogs.com/lori/p/3809785.html
Copyright © 2011-2022 走看看