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 相关文章推荐
JavaScript 动态将数字金额转化为中文大写金额
May 14 Javascript
一些技巧性实用js代码小结
Oct 14 Javascript
Jquery树插件zTree用法入门教程
Feb 17 Javascript
JavaScript中常见的字符串操作函数及用法汇总
May 04 Javascript
jQuery 中msgTips 顶部弹窗效果实现代码
Aug 14 jQuery
JavaScript学习笔记之函数记忆
Sep 06 Javascript
angular4 JavaScript内存溢出问题
Mar 06 Javascript
Vue2.0 事件的广播与接收(观察者模式)
Mar 14 Javascript
element-ui表格列金额显示两位小数的方法
Aug 24 Javascript
微信小程序3D轮播实现代码
Sep 19 Javascript
vue路由传参的基本实现方式小结【三种方式】
Feb 05 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
Oct 31 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/03 咖啡文化
php获取URL中带#号等特殊符号参数的解决方法
2014/09/02 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
php实现XML和数组的相互转化功能示例
2017/02/08 PHP
wordpress之js库集合研究介绍
2007/08/17 Javascript
二行代码解决全部网页木马
2008/03/28 Javascript
再论Javascript下字符串连接的性能
2011/03/05 Javascript
jquery 中多条件选择器,相对选择器,层次选择器的区别
2012/07/03 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
vue基本使用--refs获取组件或元素的实例
2019/11/07 Javascript
[36:33]Ti4 循环赛第四日 附加赛NEWBEE vs Mouz
2014/07/13 DOTA
[02:12]2015国际邀请赛 SHOWOPEN
2015/08/05 DOTA
python比较两个列表是否相等的方法
2015/07/28 Python
Python中pygame的mouse鼠标事件用法实例
2015/11/11 Python
Python中关键字nonlocal和global的声明与解析
2017/03/12 Python
python实现批量视频分帧、保存视频帧
2019/05/31 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
Django关于admin的使用技巧和知识点
2020/02/10 Python
keras训练曲线,混淆矩阵,CNN层输出可视化实例
2020/06/15 Python
谈谈python垃圾回收机制
2020/09/27 Python
使用Pytorch搭建模型的步骤
2020/11/16 Python
Myprotein中国网站:欧洲畅销运动营养品牌
2021/02/11 全球购物
为什么会有内存对齐
2016/10/10 面试题
药学专业个人的自我评价
2013/12/31 职场文书
中学生差生评语
2014/01/30 职场文书
幼儿教育感言
2014/02/05 职场文书
公开服务承诺制度
2014/03/26 职场文书
员工考核评语大全
2014/04/26 职场文书
白岩松演讲
2014/05/21 职场文书
电教室标语
2014/06/20 职场文书
超市采购员岗位职责
2015/04/07 职场文书
安全事故隐患排查治理制度
2015/08/05 职场文书
React配置子路由的实现
2021/06/03 Javascript