zoukankan      html  css  js  c++  java
  • 一段代码

    格式,风格很重要,贴一个最近写的一段代码。
    不复杂,条理算是清晰(没写什么注释,但是看方法名应该看得懂)。
    功能简单,但是自认为需求更改,我维护方便,放在这里留作纪念:

    /**
    *重要新闻循环滚动
    */

    function HScroll(p){
    var t = this;
    t.p = jQuery.extend({},p);
    t.ul = jQuery(t.p.ctn).find('ul');
    t.interval = null;
    t.htmlInit();
    t.eventBind();
    t.scrollStart();
    };

    HScroll.prototype.htmlInit = function(){
    var t = this;
    var ul = t.ul,
    li = t.ul.find('li'),
    liLen = li.length,
    liW = li.width(),
    ulW = liW * liLen;
    t.dW = liW;
    ul.width(ulW);
    };
    var fpr = HScroll.prototype;
    fpr.scrollStop = function(){
    var t = this;
    window.clearInterval(t.interval);
    };
    fpr.scrollStart = function(){
    var t = this;
    t.interval = window.setInterval(function(){
    t.scrollLeft();
    },t.p.intervalTime);
    };
    fpr.setLastLiFrist = function(){
    var t = this;
    var li = t.ul.find('li').last().clone();
    t.ul.find('li').last().remove();
    t.ul.prepend(li);
    };
    fpr.setFristLiLast = function(){
    var t = this;
    var li = t.ul.find('li').first().clone();
    t.ul.find('li').first().remove();
    t.ul.append(li);
    };
    fpr.marginInit = function(){
    var t = this;
    t.ul.css('margin-left',0)
    };
    fpr.scrollLeft = function(){
    var t = this;
    t.ul.animate({
    'margin-left' : -(t.dW)
    },function(){
    t.setFristLiLast();
    t.marginInit();
    });
    };
    fpr.scrollRight = function(){
    var t = this;
    t.setLastLiFrist();
    t.ul.css('margin-left',-(t.dW));
    t.ul.animate({
    'margin-left' :0
    });
    };
    fpr.eventBind = function(){
    var t = this;
    jQuery(t.p.prevCtn).click(function(){
    t.scrollStop();
    t.scrollLeft();
    t.scrollStart();
    });
    jQuery(t.p.nextCtn).click(function(){
    t.scrollStop();
    t.scrollRight();
    t.scrollStart();
    });
    jQuery(t.p.ctn).hover(function(){
    t.scrollStop();
    },function(){
    t.scrollStart();
    });
    };
    调用方法:
    new HScroll({
    ctn : '.scroll-ul-ctn',
    intervalTime : 4000,
    speed : 1000,
    prevCtn : '.article-prev',
    nextCtn : '.article-next'
    });


  • 相关阅读:
    nginx 部署
    win 7 系统ie浏览器升级11版本后,f12功能不可用的问题
    selenium 调用键盘按键
    selenium + python 环境搭建
    解决word2013老是打开未响应情况
    win7 64位备份时, 无法启动服务,0x80070422
    个人学习网站收集
    矩形后旋转后顶点坐标的求解
    Acrobat_8_Pro_SC 激活老是提示你输入的授权码无效
    DLL用def定义文件来导出重载函数(转)
  • 原文地址:https://www.cnblogs.com/tyhmj/p/2342596.html
Copyright © 2011-2022 走看看