[对联广告] JS脚本类


Posted in Javascript onAugust 27, 2006

//****************************************************************************************
//& 作者: 哇哇鱼
//& 日期: 2004年12月31日
//& 网站: http://www.13smile.com/
//& Blog: http://blog.csdn.net/bpfish
//& 名称: [对联广告] JS脚本类
//& 作用: 显示页面的对联广告
//& 方法:
//& SmileAdver.setLeftPos(10);          //设置左边对联的距页面左边的位置(PX)
//& SmileAdver.setLeftTop(150);         //设置左边对联的距页面顶部的位置(PX)
//& SmileAdver.setRightPos(10);         //设置右边对联的距页面右边的位置(PX)
//& SmileAdver.setRightTop(150);        //设置右边对联的距页面顶部的位置(PX)
//& SmileAdver.addLeftImage(链接,图片地址,链接目标,图片提示);      //添加左边对联广告的图片
//& SmileAdver.addRightImage(链接,图片地址,链接目标,图片提示);      //添加右边对联广告的图片
//& SmileAdver.scroll();                //显示对联广告
//&
//****************************************************************************************
function SmileAdver_Class(){
var leftImageArray = new Array();   //保存左边的广告图片数组
var rightImageArray = new Array();  //保存右边的广告图片数组
var leftPos,rightPos;              //leftPos = 左边广告的距左边栏位置(px)    rightPos = 右边广告的距右边栏位置(px)
var leftTop,rightTop;              //leftTop = 左边广告的距顶边栏位置(px)    rightTop = 右边广告的距顶边栏位置(px)
var lastScrollY=0;
leftPos = rightPos = 10;           //默认为10
leftTop = rightTop = 150;          //默认为150
this.setLeftPos = function(value){
 if(isNaN(value)){value = 10;}   //非数字则默认为10
 leftPos = value;
}
this.setRightPos = function(value){
 if(isNaN(value)){value = 10;}   //非数字则默认为10
 rightPos = value;
}
this.setLeftTop = function(value){
 if(isNaN(value)){value = 150;}   //非数字则默认为150
 leftTop = value;
}
this.setRightTop = function(value){
 if(isNaN(value)){value = 150;}   //非数字则默认为150
 rightTop = value;
}
//添加左边的图片广告 addLeftImage(链接,图片地址,链接目标,图片提示)
this.addLeftImage = function(href,image,target,title){
 var imageArray = getImageArray(href,image,target,title);
 if(imageArray != null){
    leftImageArray[leftImageArray.length] = imageArray;
 }
}
//添加右边的图片广告 addRightImage(链接,图片地址,链接目标,图片提示)
this.addRightImage = function(href,image,target,title){
 var imageArray = getImageArray(href,image,target,title);
 if(imageArray != null){
    rightImageArray[rightImageArray.length] = imageArray;
 }
}
//内部添加广告图片使用,如果没有图片地址,则返回一个null值,否则返回一个数组
function getImageArray(href,image,target,title){
 if(image == undefined){return null;}                 //没有图片地址,不添加
 if(target == undefined || target == ""){target = "_blank"};     //默认为_blank打开方式
target = " target=\"" + target + "\"";
 if(title == undefined){                         //广告图片title提示
  title = "" ;
 }else{
  title = " title=\"" + title + "\"";
 }
 //链接以www.开头则自动加上http://  (否则链接时会链接错误)
 if(href.toLowerCase().substring(0,4) == "www."){
   href = "http://"; + href;
 }
 if(image.toLowerCase().substring(0,4) == "www."){
   image = "http://"; + image;
 }
 return new Array(href,image,target,title);
}
//内部显示图片横幅所用 showImageDiv(div的名称,div的摆放方向(left,right),div的摆放位置,div层距顶部的位置,显示的图片数组变量)
function showImageDiv(div,pos,posPX,topPx,imageArray){
 var j;
 document.write("<div id=\"" + div + "\" style=\"" + pos + ":" + posPX + "px;POSITION:absolute;TOP:" + topPx + "px;\">");
 for(j=0; j< imageArray.length; j++){
    document.write("<a href=\"" + imageArray[j][0] + "\" "+ imageArray[j][2]+ imageArray[j][3] + "><img src=\""+ imageArray[j][1] + "\" border=\"0\" "+ imageArray[j][3] + "></a>");
    if(j != imageArray.length-1){document.write("<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td height=10></td></tr></table>");}
 }
 document.write("</div>");
}
//滚动广告对联图片
this.scroll = function(){
 showImageDiv("smilediv1","left",leftPos,leftTop,leftImageArray);
 showImageDiv("smilediv2","right",rightPos,rightTop,rightImageArray);
 window.setInterval(scrollImage,1);
}
//内部使用用来滚动广告图片
function scrollImage(){
 var diffY,percent;
 diffY=document.body.scrollTop;
 percent=.1*(diffY-lastScrollY);
 if(percent>0)percent=Math.ceil(percent);
 else percent=Math.floor(percent);
 document.all.smilediv1.style.pixelTop+=percent;
 document.all.smilediv2.style.pixelTop+=percent;    
 lastScrollY=lastScrollY+percent;
}
}
///////////////////////////////////////////类结束////////////////////////////////////////////////////////////////
/////////类的使用示例代码////////////////////////////////////////////////
var SmileAdver = new SmileAdver_Class();
SmileAdver.setLeftPos(10);
SmileAdver.setRightPos(10);
SmileAdver.setLeftTop(150);
SmileAdver.setRightTop(150);
SmileAdver.addLeftImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif";,"","asdfasdf");
SmileAdver.addLeftImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif");
SmileAdver.addLeftImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif");
SmileAdver.addRightImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif");
SmileAdver.addRightImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif");
SmileAdver.addRightImage("http://www.138tips.com/","http://www.88ball.com/images/138tips.gif");
SmileAdver.scroll();

Javascript 相关文章推荐
js 页面执行时间计算代码
Mar 04 Javascript
JavaScript创建类/对象的几种方式概述及实例
May 06 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
Mar 04 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
May 07 Javascript
浅谈javascript原型链与继承
Jul 13 Javascript
jquery实现倒计时功能
Dec 28 Javascript
Vue 页面切换效果之 BubbleTransition(推荐)
Apr 08 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
Aug 12 Javascript
Vue中的情侣属性$dispatch和$broadcast详解
Mar 07 Javascript
vue3实现v-model原理详解
Oct 09 Javascript
微信小程序登录时如何获取input框中的内容
Dec 04 Javascript
Vue项目页面跳转时浏览器窗口上方显示进度条功能
Mar 26 Javascript
根据分辨率不同,调用不同的css文件
Aug 25 #Javascript
mouse_on_title.js
Aug 25 #Javascript
新页面打开实际尺寸的图片
Aug 25 #Javascript
js获取变量
Aug 24 #Javascript
在b/s开发中经常用到的javaScript技术
Aug 23 #Javascript
两个SUBMIT按钮,如何区分处理
Aug 22 #Javascript
解决 FireFox 下[使用event很麻烦] 的问题.
Aug 22 #Javascript
You might like
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
PHP中执行MYSQL事务解决数据写入不完整等情况
2014/01/07 PHP
php获取文件内容最后一行示例
2014/01/09 PHP
Symfony2学习笔记之模板用法详解
2016/03/17 PHP
php实现快速对二维数组某一列进行组装的方法小结
2019/12/04 PHP
jquery实用代码片段集合
2010/08/12 Javascript
纯JavaScript实现HTML5 Canvas六种特效滤镜示例
2013/06/28 Javascript
实现checkbox全选、反选、取消JavaScript小脚本异常
2014/04/10 Javascript
JavaScript link方法入门实例(给字符串加上超链接)
2014/10/17 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
jQuery实现文本框输入同步的方法
2015/06/20 Javascript
javascript 使用for循环时该注意的问题-附问题总结
2015/08/19 Javascript
js实现完美兼容各大浏览器的人民币大小写相互转换
2015/10/29 Javascript
js只执行1次的函数示例
2016/07/20 Javascript
Select下拉框模糊查询功能实现代码
2016/07/22 Javascript
微信web端后退强制刷新功能的实现代码
2018/03/04 Javascript
微信小程序实现滴滴导航tab切换效果
2018/07/24 Javascript
详解ES7 Decorator 入门解析
2019/02/18 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
浅谈js中的attributes和Attribute的用法与区别
2020/07/16 Javascript
[02:43]DOTA2英雄基础教程 半人马战行者
2014/01/13 DOTA
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
[37:21]完美世界DOTA2联赛PWL S2 Inki vs Magma 第二场 11.22
2020/11/24 DOTA
python删除过期log文件操作实例解析
2018/01/31 Python
python实现自主查询实时天气
2018/06/22 Python
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
荷兰皇家航空公司官方网站:KLM Royal Dutch Airlines
2017/12/07 全球购物
Farfetch阿联酋:奢侈品牌时尚购物平台
2019/07/26 全球购物
Jones Bootmaker官网:优质靴子和鞋子在线
2020/11/30 全球购物
门卫岗位职责说明书
2014/08/18 职场文书
南京市纪委监察局整改方案
2014/09/16 职场文书
公务员检讨书
2014/11/01 职场文书
2015年学校管理工作总结
2015/07/20 职场文书
廉洁自律准则学习心得体会
2016/01/13 职场文书
详解CSS中的特指度和层叠问题
2021/07/15 HTML / CSS
Android studio 简单计算器的编写
2022/05/20 Java/Android