js 弹出新页面避免被浏览器、ad拦截的一种新方法


Posted in Javascript onApril 30, 2014

以绑定click弹窗的方式,改为普通的链接,即 a[target=_blank],在点击打开新窗口之前,修改其href。

绑定mousedown,鼠标点击执行完成前修改href。

绑定focus,保证tab切换+enter时替换href。

<input type="search" id="keyword" value="" autocomplete="off" placeholder="请输入搜索关键字" /> 
<a href="###" id="submit" target="_blank" >搜索</a> 
<script type="text/javascript"> 
(function(document) { 
var submit = document.getElementById('submit'); 
var keyword = document.getElementById('keyword'); 
var url = 'http://www.baidu.com/baidu?wd='; 
submit.onfocus = submit.onmousedown = function() { 
var href = url + escape(keyword.value); 
if (href !== submit.href) { 
submit.href = url + escape(keyword.value) 
} 
} })(document); 
</script>

ps:还可以在 在html代码中 以onclick dom 0级方式绑定 、target方式提交表单等
Javascript 相关文章推荐
JS中产生20位随机数以0-9为例也可以是a-z A-Z
Aug 01 Javascript
javascript框架设计读书笔记之种子模块
Dec 02 Javascript
JavaScript中的闭包介绍
Mar 15 Javascript
详解JavaScript中Date.UTC()方法的使用
Jun 12 Javascript
在Ubuntu系统上安装Node.JS的教程
Oct 15 Javascript
js事件冒泡、事件捕获和阻止默认事件详解
Aug 04 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
Aug 24 Javascript
ES6与CommonJS中的模块处理的区别
Jun 13 Javascript
javascrit中undefined和null的区别详解
Apr 07 Javascript
js实现百度登录窗口拖拽效果
Mar 19 Javascript
原生JS实现记忆翻牌游戏
Jul 31 Javascript
vue实现简单的登录弹出框
Oct 26 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
Apr 30 #Javascript
页面js遇到乱码问题的解决方法是和无法转码的情况
Apr 30 #Javascript
js获取ajax返回值代码
Apr 30 #Javascript
jquery如何把数组变为字符串传到服务端并处理
Apr 30 #Javascript
js图片预加载示例
Apr 30 #Javascript
javascript闭包入门示例
Apr 30 #Javascript
三种动态加载js的jquery实例代码另附去除js方法
Apr 30 #Javascript
You might like
PHP4与PHP5的时间格式问题
2008/02/17 PHP
php set_time_limit(0) 设置程序执行时间的函数
2010/05/26 PHP
php实现cookie加密的方法
2015/03/10 PHP
用 JSON 处理缓存
2007/04/27 Javascript
Extjs学习过程中新手容易碰到的低级错误积累
2010/02/11 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
js实现类似于add(1)(2)(3)调用方式的方法
2015/03/04 Javascript
基于OL2实现百度地图ABCD marker的效果
2015/10/01 Javascript
分析js闭包引起的事件注册问题
2016/03/29 Javascript
关于javascript的一些知识以及循环详解
2016/09/12 Javascript
基于Node.js + WebSocket打造即时聊天程序嗨聊
2016/11/29 Javascript
JavaScript箭头(arrow)函数详解
2017/06/04 Javascript
简述vue中的config配置
2018/01/23 Javascript
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
2018/03/28 jQuery
利用hasOwnProperty给数组去重的面试题分享
2018/11/05 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
js实现自定义滚动条的示例
2020/10/27 Javascript
VUE和Antv G6实现在线拓扑图编辑操作
2020/10/28 Javascript
Python操作mongodb的9个步骤
2018/06/04 Python
python实现定时提取实时日志程序
2018/06/22 Python
通过pycharm使用git的步骤(图文详解)
2019/06/13 Python
Python jieba库分词模式实例用法
2021/01/13 Python
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
HTML5是否真的可以取代Flash
2010/02/10 HTML / CSS
突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)
2013/01/31 HTML / CSS
护士自我鉴定
2013/10/23 职场文书
总经理职责
2013/12/22 职场文书
高中生自我评语大全
2014/01/19 职场文书
《歌唱二小放牛郎》教学反思
2014/04/19 职场文书
离婚协议书范本2014
2014/10/27 职场文书
校本课程教学计划
2015/01/19 职场文书
企业开业庆典答谢词
2015/01/20 职场文书
房产证明范本
2015/06/19 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
行为规范主题班会
2015/08/13 职场文书
大学生入党自我鉴定范文
2019/06/21 职场文书