自己写Javascript类库

 最近看了很多人都在使用javascript开发

自己写一个简单的类库吧

 

足足花了一个星期累了

 

 

实验下 体验下面向对象吧

 

  1. document.body.onload = main;
  2. function main(){
  3.     var imgmove = new ImageMove();
  4.     imgmove.start(advertPath,advertStep,advertTimer);
  5.     var leftimg = new LeftImage();
  6.     leftimg.start(leftadvertPath,leftadvertTimer,leftadvertTop);
  7. }
  8. /*
  9.     图片移动
  10. */
  11. function ImageMove(){
  12.     /*
  13.         x坐标是否正向移动
  14.     */
  15.     var xon = true;
  16.     /*
  17.         y坐标是否正向移动
  18.     */
  19.     var yon = true;
  20.     /*
  21.         步长
  22.     */
  23.     var step;
  24.     /*
  25.         图片对象
  26.     */
  27.     var img = new image();
  28.     /*
  29.         图片的x坐标
  30.     */
  31.     var x = img.getX();
  32.     /*
  33.         图片的y坐标
  34.     */
  35.     var y = img.getY();
  36.     /*
  37.         时间器回调方法
  38.     */
  39.     this.run = function(){
  40.         /*
  41.             最大宽度
  42.         */
  43.         var maxWidth =document.body.clientWidth-img.getWidth();
  44.         /*
  45.             最大高度
  46.         */
  47.         var maxHeight = document.body.clientHeight-img.getHeight();
  48.         /*
  49.             x坐标的移动
  50.         */
  51.         if(xon){
  52.             x = x+step;
  53.             img.setX(x+document.body.scrollLeft);
  54.             if(x>=maxWidth){
  55.                 xon = false;
  56.             }
  57.         }
  58.         else{
  59.             x = x-step;
  60.             img.setX(x+document.body.scrollLeft);
  61.             if(x<=0){
  62.                 xon = true;
  63.             }
  64.         }
  65.         /*
  66.             y坐标的移动
  67.         */
  68.         if(yon){
  69.             y = y+step;         
  70.             img.setY(y+document.body.scrollTop);
  71.             if(y>=maxHeight){
  72.                 yon = false;
  73.                 
  74.             }
  75.         }
  76.         else{
  77.             y = y-step;
  78.             img.setY(y+document.body.scrollTop);
  79.             if(y<=0){
  80.                 yon = true;
  81.             }
  82.         }
  83.     }
  84.     /*
  85.         启动图片移动的方法
  86.         @param imgPath 图片路径
  87.         @param var_step 步长
  88.         @param advert_timer 时间
  89.     */
  90.     this.start = function(imgPath,var_step,advert_timer){
  91.         step = var_step;
  92.         img.isAbsolute(true);
  93.         img.setUrl(imgPath);
  94.         WebContainer.add(img);
  95.         timer = new Timer(this,advert_timer);
  96.         timer.start();
  97.     }
  98. }
  99. /*
  100.     左侧广告图片
  101.     @param 图片路径
  102. */
  103. function LeftImage(){
  104.     /*
  105.         层对象
  106.     */
  107.     var leftimagepanel = new AbsolutePanel();
  108.     /*
  109.         关闭文字对象
  110.     */
  111.     var textpanel = new AbsolutePanel();
  112.     /*
  113.         图片对象
  114.     */
  115.     var img = new image();
  116.     /*
  117.         top坐标
  118.     */
  119.     var imgtop = 0;
  120.     /*
  121.         时间器对象
  122.     */
  123.     var timer;
  124.     /*
  125.         时间器回调方法
  126.     */
  127.     this.run = function(){
  128.         /*
  129.             y坐标的移动
  130.         */
  131.             y = .1*(document.body.scrollTop-imgtop+leftadvertTop);
  132.             if(y>0){
  133.                 y = Math.ceil(y);
  134.             }
  135.             else{
  136.                 y = Math.floor(y);
  137.             }
  138.             leftimagepanel.setY(leftimagepanel.getY()+y);
  139.             imgtop += y;
  140.     }
  141.     /*
  142.         启动图片
  143.         @param imgpath 图片路径
  144.         @param top 图片固定在窗口的y 坐标
  145.     */
  146.     this.start = function(imgpath,var_timer,top){
  147.         leftimagepanel.setY(top);
  148.         imgtop = top;
  149.         img.setUrl(imgpath);
  150.         textpanel.setText("关闭");
  151.         textpanel.addStyle("cursor","pointer");
  152.         textpanel.addActionListener(function(){
  153.             timer.clear();
  154.             WebContainer.remove(leftimagepanel);
  155.         });
  156.         textpanel.setX(10);
  157.         textpanel.setX(leftimagepanel.getWidth()-textpanel.getWidth());
  158.         leftimagepanel.setAlign("right");
  159.         leftimagepanel.add(img);
  160.         leftimagepanel.add(textpanel);
  161.         leftimagepanel.addStyle("background-attachment","fixed");
  162.         WebContainer.add(leftimagepanel);
  163.         timer = new Timer(this,var_timer);
  164.         timer.start();
  165.     }
  166. }

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值