[对联广告] 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 相关文章推荐
学习jquery必备 api中英文对照的chm手册 下载
May 03 Javascript
半角全角相互转换的js函数
Oct 16 Javascript
解决jquery .ajax 在IE下卡死问题的解决方法
Oct 26 Javascript
jquery scrollTop方法根据滚动像素显示隐藏顶部导航条
May 27 Javascript
Jquery实现弹性滑块滑动选择数值插件
Aug 08 Javascript
Bootstrap实现响应式导航栏效果
Dec 28 Javascript
浅谈针对Vue相同路由不同参数的刷新问题
Sep 29 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
May 14 jQuery
JavaScript函数式编程(Functional Programming)高阶函数(Higher order functions)用法分析
May 22 Javascript
JQuery实现折叠式菜单的详细代码
Jun 03 jQuery
javascript使用正则表达式实现注册登入校验
Sep 23 Javascript
vue项目多环境配置(.env)的实现
Jul 21 Vue.js
根据分辨率不同,调用不同的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使用PHPexcel导入导出数据的方法
2015/11/14 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
超简单JS二级、多级联动的简单实例
2014/02/18 Javascript
jquery实现显示已选用户
2014/07/21 Javascript
纯js实现重发验证码按钮倒数功能
2015/04/21 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
vue使用keep-alive实现数据缓存不刷新
2017/10/21 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
vue两个组件间值的传递或修改方式
2018/07/04 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
layui的select联动实现代码
2019/09/28 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
2020/08/13 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
从零学python系列之新版本导入httplib模块报ImportError解决方案
2014/05/23 Python
python实现在目录中查找指定文件的方法
2014/11/11 Python
Python ftp上传文件
2016/02/13 Python
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
Python实现的选择排序算法原理与用法实例分析
2017/11/22 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
使用django-guardian实现django-admin的行级权限控制的方法
2018/10/30 Python
selenium中get_cookies()和add_cookie()的用法详解
2020/01/06 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
基于TensorFlow的CNN实现Mnist手写数字识别
2020/06/17 Python
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
公司财务自我评价分享
2013/12/17 职场文书
一年级家长会邀请函
2014/01/25 职场文书
药剂专业自荐信范文
2014/04/16 职场文书
产品推广策划方案
2014/05/10 职场文书
党员教师四风问题整改措施思想汇报
2014/10/08 职场文书
2015年光棍节活动总结
2015/03/24 职场文书
2015年司机工作总结
2015/04/23 职场文书
员工福利申请报告
2015/05/15 职场文书
春晚观后感
2015/06/11 职场文书
《打电话》教学反思
2016/02/22 职场文书
Golang 实现 WebSockets 之创建 WebSockets
2022/04/24 Golang