当前位置: 首页 > news >正文

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了,可以进行测试了.

本文转自博客园张占岭(仓储大叔)的博客,原文链接:JS~模拟表单在新窗口打开,避免广告拦截,如需转载请自行联系原博主。

相关文章:

  • mysql分表经验总结
  • Lind.DDD.Messaging框架通讯组件介绍
  • 未完成.队列
  • vuex的使用
  • 21、PHP和python/JAVA比,哪个更好学?
  • word 2007每次打开总出现setup error
  • C# WinForm开发系列 - GDI+【转】
  • 【自用】 Kotlin 创建自己的对话框
  • 从antlr扯淡到一点点编译原理
  • 用Canvas画一棵二叉树
  • webpack+react环境搭建与hello world
  • iOS 实现UINavigation全屏滑动返回(一)
  • c++那些事儿4 0 多态
  • 1.Node.js
  • 使用Doxygen生成C#帮助文档
  • Asm.js的简单介绍
  • CSS盒模型深入
  • Hibernate最全面试题
  • SpringCloud集成分布式事务LCN (一)
  • Web设计流程优化:网页效果图设计新思路
  • 大数据与云计算学习:数据分析(二)
  • 回顾2016
  • 免费小说阅读小程序
  • 前端性能优化--懒加载和预加载
  • 强力优化Rancher k8s中国区的使用体验
  • 温故知新之javascript面向对象
  • gunicorn工作原理
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 大数据全解:定义、价值及挑战
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • #ubuntu# #git# repository git config --global --add safe.directory
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (二)pulsar安装在独立的docker中,python测试
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (正则)提取页面里的img标签
  • (转)甲方乙方——赵民谈找工作
  • (转)视频码率,帧率和分辨率的联系与区别
  • .net core使用ef 6
  • .NET/MSBuild 中的发布路径在哪里呢?如何在扩展编译的时候修改发布路径中的文件呢?
  • .NET命名规范和开发约定
  • .NET文档生成工具ADB使用图文教程
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • ??在JSP中,java和JavaScript如何交互?
  • @FeignClient注解,fallback和fallbackFactory
  • [ 渗透工具篇 ] 一篇文章让你掌握神奇的shuize -- 信息收集自动化工具
  • []C/C++读取串口接收到的数据程序
  • [20170705]lsnrctl status LISTENER_SCAN1
  • [28期] lamp兄弟连28期学员手册,请大家务必看一下
  • [BZOJ 4034][HAOI2015]T2 [树链剖分]
  • [BZOJ1178][Apio2009]CONVENTION会议中心
  • [codevs 1515]跳 【解题报告】
  • [dart学习]第四篇:函数
  • [DevEpxress]GridControl 显示Gif动画