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 相关文章推荐
含有CKEditor的表单如何提交
Jan 09 Javascript
浅谈Jquery为元素绑定事件
Apr 27 Javascript
基于JS实现简单的样式切换效果代码
Sep 04 Javascript
基于MVC4+EasyUI的Web开发框架形成之旅之界面控件的使用
Dec 16 Javascript
javascript函数自动执行常用方法汇总
Mar 28 Javascript
js 输入框 正则表达式(菜鸟必看教程)
Feb 19 Javascript
详解Node.js串行化流程控制
May 04 Javascript
AngularJS自定义指令详解(有分页插件代码)
Jun 12 Javascript
get  post jsonp三种数据交互形式实例详解
Aug 25 Javascript
小程序云开发如何实现图片上传及发表文字
May 17 Javascript
Vue 请求传公共参数的操作
Jul 31 Javascript
vue接通后端api以及部署到服务器操作
Aug 13 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
php获取mysql版本的几种方法小结
2008/03/25 PHP
yii操作cookie实例简介
2014/07/09 PHP
PHP中的替代语法介绍
2015/01/09 PHP
PHP也能干大事 随机函数
2015/04/14 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
PHP实现批量修改文件名的方法示例
2019/09/18 PHP
ECMAScript 基础知识
2007/06/29 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
jquery1.9 下检测浏览器类型和版本的方法
2013/12/26 Javascript
css与javascript跨浏览器兼容性总结
2014/09/15 Javascript
使用jQuery将多条数据插入模态框的实现代码
2014/10/08 Javascript
详解javascript数组去重问题
2015/11/06 Javascript
基于JavaScript实现一定时间后去执行一个函数
2015/12/14 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
详解使用vue-cli脚手架初始化Vue项目下的项目结构
2018/03/08 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
Python Web框架Pylons中使用MongoDB的例子
2013/12/03 Python
Python获取电脑硬件信息及状态的实现方法
2014/08/29 Python
Python爬虫框架Scrapy实战之批量抓取招聘信息
2015/08/07 Python
详解Python各大聊天系统的屏蔽脏话功能原理
2016/12/01 Python
利用python修改json文件的value方法
2018/12/31 Python
python word转pdf代码实例
2019/08/16 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
python GUI库图形界面开发之PyQt5拖放控件实例详解
2020/02/25 Python
HTML5通过调用canvas对象的getContext()方法来获取绘图环境
2014/06/23 HTML / CSS
奥地利手表、香水、化妆品和珠宝购物网站:Brasty.at
2021/01/17 全球购物
SQL Server面试题
2016/10/17 面试题
30年同学聚会邀请函
2014/01/25 职场文书
医校毕业生自我鉴定
2014/01/25 职场文书
教育项目合作协议书格式
2014/10/17 职场文书
2014年小学语文工作总结
2014/12/20 职场文书
培训简讯范文
2015/07/20 职场文书