CSDN博客

img bpfish

(原创)[对联广告] JS脚本类

发表于2004/12/31 14:02:00  1883人阅读

好久没有来更新BLOG啦,这段时间都在忙着.NET平台的程序编写..ASP都没有接触啦....今天更新一下BLOG吧..今天也是2004年最后一天.当是一份礼物吧

今天因一个页面需要放对联广告.于是产生了写一个脚本类的想法(老习惯,总想把什么东西都封装在类里.呵)
还是不在说什么啦.要看的东西都在代码里(注释也加了很多)示例代码也一并送上...

//****************************************************************************************
//& 作者: 哇哇鱼
//& 日期: 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 i;
  document.write("<div id=/"" + div + "/" style=/"" + pos + ":" + posPX + "px;POSITION:absolute;TOP:" + topPx + "px;/">");
  for(i=0; i< imageArray.length; i++){
     document.write("<a href=/"" + imageArray[i][0] + "/" "+ imageArray[i][2]+ imageArray[i][3] + "><img src=/""+ imageArray[i][1] + "/" border=/"0/" "+ imageArray[i][3] + "></a>");
     if(i != 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();

0 0

相关博文

我的热门文章

img
取 消
img