javascript背投广告代码的完善


Posted in Javascript onApril 08, 2008

背投广告,既然被称为广告,那如何才能让广告主的钱花得实在,花得乐意呢?

我们可以增加判断,如果该弹出窗口被浏览器拦截,则只要用户点击页面就触发 window.open 事件,这样一般不会拦截,浏览器会认为这是用户的默认行为。

代码可编写如下:

var $E = YAHOO.util.Event;  
var adPopup;  
var popAd = function(sURL,sName,sFeatures,bReplace) {  
    if (adPopup) return;  
    if(sName == undefined) {  
        sName = '_blank';  
    };  
    if(sFeatures == undefined) {  
        sFeatures = '';  
    };  
    if(bReplace == undefined) {  
        bReplace = false;  
    };      adPopup = window.open(sURL,sTarget,sFeatures,bReplace);  
    adPopup.blur();  
    adPopup.opener.focus();  
    $E.removeListener(document.body, 'click', arguments.callee);  
}  
try {  
    popAd();  
} catch (e) {  
    $E.on(document.body, 'click', popAd);  
}

当然如果用户浏览器安装了拦截插件,那很有可能不会弹出(比如 Firefox 的 noscript 插件,就不允许任何弹出窗)。方法不是绝对的,也不是最好的,只是用最少的时间来做最效率的事情。

PS:可以通过模拟 form 提交的方式来弹出窗口,穿越性(相对于一般拦截弹窗的插件)很好,不过无法设置 sFeatures 参数内容

Javascript 相关文章推荐
用js模拟JQuery的show与hide动画函数代码
Sep 20 Javascript
代码触发js事件(click、change)示例应用
Dec 13 Javascript
js使用eval解析json(js中使用json)
Jan 17 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
Dec 18 Javascript
详解addEventListener的三个参数之useCapture
Mar 16 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
Aug 10 Javascript
jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表
Aug 26 Javascript
基于node实现websocket协议
Apr 25 Javascript
Vue组件开发初探
Feb 14 Javascript
javaScript+turn.js实现图书翻页效果实例代码
Feb 16 Javascript
Avalonjs双向数据绑定与监听的实例代码
Jun 23 Javascript
js实现简单五子棋游戏
May 28 Javascript
大家未必知道的Js技巧收藏
Apr 07 #Javascript
用JavaScript调用WebService的示例
Apr 07 #Javascript
HTML中Select不用Disabled实现ReadOnly的效果
Apr 07 #Javascript
javascript add event remove event
Apr 07 #Javascript
JS动画效果代码3
Apr 03 #Javascript
CSS常用网站布局实例
Apr 03 #Javascript
地址栏上的一段语句,改变页面的风格。(教程)
Apr 02 #Javascript
You might like
PHP面向对象概念
2011/11/06 PHP
PHP中spl_autoload_register函数的用法总结
2013/11/07 PHP
php实现模拟登陆方正教务系统抓取课表
2015/05/19 PHP
PHP导入导出Excel代码
2015/07/07 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
彻底搞懂PHP 变量结构体
2017/10/11 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
2019/06/14 PHP
javascript function、指针及内置对象
2009/02/19 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
js获取控件位置以及不同浏览器中的差别介绍
2013/08/08 Javascript
javascript字符串替换及字符串分割示例代码
2013/12/12 Javascript
深入理解JavaScript单体内置对象
2016/06/06 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
js css3实现图片拖拽效果
2017/03/04 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
2018/03/03 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
JS实现使用POST方式发送请求
2019/08/30 Javascript
countUp.js实现数字动态变化效果
2019/10/17 Javascript
vue-cli3 取消eslint校验代码的解决办法
2020/01/16 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
2020/03/12 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
vue实现div可拖动位置也可改变盒子大小的原理
2020/09/16 Javascript
python中模块查找的原理与方法详解
2017/08/11 Python
python实现RabbitMQ的消息队列的示例代码
2018/11/08 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
TensorFlow绘制loss/accuracy曲线的实例
2020/01/21 Python
Python基于requests库爬取网站信息
2020/03/02 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
2020/08/19 Python
详解python tkinter包获取本地绝对路径(以获取图片并展示)
2020/09/04 Python
python 绘制场景热力图的示例
2020/09/23 Python
PyTorch中clone()、detach()及相关扩展详解
2020/12/09 Python
解决pycharm不能自动保存在远程linux中的问题
2021/02/06 Python
大学生作弊检讨书
2014/02/19 职场文书
文秘求职信范文
2014/04/10 职场文书
舞蹈兴趣小组活动总结
2014/07/07 职场文书
关于远足的感想
2015/08/10 职场文书