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 相关文章推荐
jQuery设置div一直在页面顶部显示的方法
Oct 24 Javascript
js实现回放拖拽轨迹从过程上进行分析
Jun 26 Javascript
JavaScript中使用document.write向页面输出内容实例
Oct 16 Javascript
js实现点击添加一个input节点
Dec 05 Javascript
node.js抓取并分析网页内容有无特殊内容的js文件
Nov 17 Javascript
ng2学习笔记之bootstrap中的component使用教程
Mar 09 Javascript
ES6中Iterator与for..of..遍历用法分析
Mar 31 Javascript
深入理解AngularJs-scope的脏检查(一)
Jun 19 Javascript
Vue.js数据绑定之data属性
Jul 07 Javascript
Vue2.0学习系列之项目上线的方法步骤(图文)
Sep 25 Javascript
vue cli4中mockjs在dev环境和build环境的配置详情
Apr 06 Vue.js
前端框架ECharts dataset对数据可视化的高级管理
Dec 24 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
晶体管单管来复再生式收音机
2021/03/02 无线电
PHP的FTP学习(二)[转自奥索]
2006/10/09 PHP
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
让div层随鼠标移动的实现代码 ie ff
2009/12/18 Javascript
分享14个很酷的jQuery导航菜单插件
2011/04/25 Javascript
JSON 数据格式介绍
2012/01/13 Javascript
实现js保留小数点后N位的代码
2014/11/13 Javascript
简述JavaScript中正则表达式的使用方法
2015/06/15 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
jQuery 获取多选框的值及多选框中文的函数
2016/05/16 Javascript
关于动态生成dom绑定事件失效的原因及解决方法
2016/08/06 Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
2016/11/26 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
Vue-resource实现ajax请求和跨域请求示例
2017/02/23 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
js自定义Tab选项卡效果
2017/06/05 Javascript
AngularJS 限定$scope的范围实例详解
2017/06/23 Javascript
原生js实现碰撞检测
2020/03/12 Javascript
element中el-container容器与div布局区分详解
2020/05/13 Javascript
VUE前端从后台请求过来的数据进行转换数据结构操作
2020/11/11 Javascript
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
python opencv之分水岭算法示例
2018/02/24 Python
python简单区块链模拟详解
2019/07/03 Python
css3中less实现文字长阴影(long shadow)
2020/04/24 HTML / CSS
介绍下java.util.Arrays类
2012/10/16 面试题
探亲假请假条
2014/04/11 职场文书
汽车广告策划方案
2014/05/31 职场文书
大学生个人求职信
2014/06/02 职场文书
党支部季度考核意见
2015/06/02 职场文书
单独二胎证明
2015/06/24 职场文书
教师教育心得体会
2016/01/19 职场文书
Prometheus 监控MySQL使用grafana展示
2021/08/30 MySQL
Python之基础函数案例详解
2021/08/30 Python