[对联广告] 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 相关文章推荐
鼠标图片振动代码
Jul 06 Javascript
jquery和ajax的关系详细介绍
Nov 29 Javascript
js交换排序 冒泡排序算法(Javascript版)
Oct 04 Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
Oct 26 Javascript
jQuery实现移动端滑块拖动选择数字效果
Dec 24 Javascript
JavaScript使用键盘输入控制实现数字验证功能
Aug 19 Javascript
jquery append与appendTo方法比较
May 24 jQuery
深入浅析Vue中的slots/scoped slots
Apr 03 Javascript
JavaScript学习教程之cookie与webstorage
Jun 23 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 jQuery
element-ui 弹窗组件封装的步骤
Jan 22 Javascript
js简单粗暴的发布订阅示例代码
Jan 23 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
在普通HTTP上安全地传输密码
2007/07/21 PHP
使用php语句将数据库*.sql文件导入数据库
2014/05/05 PHP
用ASP将SQL搜索出来的内容导出为TXT的代码
2007/07/27 Javascript
JavaScript获取客户端计算机硬件及系统等信息的方法
2014/01/02 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
js分页工具实例
2015/01/28 Javascript
javascript实现动态表头及表列的展现方法
2015/07/14 Javascript
Node.js本地文件操作之文件拷贝与目录遍历的方法
2016/02/16 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
jquery+ajax+text文本框实现智能提示完整实例
2016/07/09 Javascript
Node.js中常规的文件操作总结
2016/10/13 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
vue.js vue-router如何实现无效路由(404)的友好提示
2017/12/20 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
vue-cli的工程模板与构建工具详解
2018/09/27 Javascript
vue中使用微信公众号js-sdk踩坑记录
2019/03/29 Javascript
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
使用Django启动命令行及执行脚本的方法
2018/05/29 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
Python 使用 prettytable 库打印表格美化输出功能
2019/12/26 Python
Python3如何判断三角形的类型
2020/04/12 Python
keras 两种训练模型方式详解fit和fit_generator(节省内存)
2020/07/03 Python
Giglio俄罗斯奢侈品购物网:男士、女士、儿童高级时装
2018/07/27 全球购物
FC-Moto英国:欧洲最大的摩托车服装和头盔商店之一
2019/08/25 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
linux面试题参考答案(7)
2014/07/24 面试题
专科文秘应届生求职信
2013/11/18 职场文书
标准化管理实施方案
2014/02/25 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
会议欢迎词
2015/01/23 职场文书
2015年留守儿童工作总结
2015/05/22 职场文书
2016年世界人口日宣传活动总结
2016/04/05 职场文书
关于Oracle12C默认用户名system密码不正确的解决方案
2021/10/16 Oracle
Javascript的promise,async和await的区别详解
2022/03/24 Javascript