轮播封装简单

轮播原生js封装

总共四个部分

标题

*{

margin:0;

padding:0;

}

ul{

list-style:none;

}

.list img{

width:100%;

vertical-align:top;

}

.box{

width:800px;

height:450px;

margin:50px auto;

overflow:hidden;

position:relative;

}

.list{

width:800%;

height:450px;

position:absolute;

left:0;

top:0;

transition:all.5s;

}

.list li{

float:left;

width:800px;

height:450px;

}

.box span{

display:inline-block;

width:40px;

height:80px;

position:absolute;

top:50%;

margin-top: -40px;

background-color:rgba(51,51,51,0.5);

cursor:pointer;

}

.back{

left:0;

}

.next{

right:0;

}

.point{

position:absolute;

bottom:20px;

right:100px;

}

.point li{

float:left;

width:20px;

height:20px;

border-radius:50%;

cursor:pointer;

background-color:#000;

margin-left:20px;

}

.point.active{

background-color:#01ffff;

}

  • var_box=document.getElementById('box');//最大容器

    var_list=document.getElementById('list');//  ul

    var_li=_list.getElementsByTagName('li');//li

    var_back=document.getElementById('back');//上一页

    var_next=document.getElementById('next');//下一页

    var_point=document.getElementById('point');//小圆点的ul

    var_ali=_point.getElementsByTagName('li');//小圆点

    variNow=0;

    vartimer=null;

    // 第一部分:

    // 获取变量暂时不提,接下来的轮播第一步:先自己封装一个函数,如下:

    functionmove(){

    // 自己封装的函数内执行一个for循环,该循环是动态给 圆点(li)通过动态添加class名

    // 然后在css样式中写li的背景颜色样式改变它的背景颜色。

    for(vari=0;i<_ali.length;i++){

    // 让圆点(li)的class名为空。

    _ali[i].className='';

    }

    // 让当前的li圆点添加class名称

    _ali[iNow].className='active';

    // 让整个ul向左慢慢移动,移动的距离就是当前li的宽度这个宽度是慢慢增加的。

    _list.style.left=-_li[0].offsetWidth*iNow+'px';

    }

    // 第二部分:主要是点击事件。

    // 给我们的左右点击按钮添加点击事件 通过我们的点击按钮的点击事件改变两件事,一:就是让我们的轮播图片执行,也就是执行我们封装好的函数

    // 二:让我们的小圆点相对应的执行。

    _next.onclick=function(){

    iNow++;

    if(iNow>=_li.length){

    iNow=0;

    }

    move()

    }

    _back.onclick=function(){

    iNow--;

    if(iNow<=-1){

    iNow=_li.length-1;

    }

    move()

    }

    // 接下来就是让轮播中的小点 点击让相应的图片进行变换

    for(vari=0;i<_ali.length;i++){

    // 先动态获取我们的小点岁所对应的li,

    _ali[i].index=i;

    //给我们的小点添加点击事件

    //点击圆圈让我们的轮播执行。

    _ali[i].onclick=function(){

    //让我们的变量iNow变成当前的小圆点。

    iNow=this.index;

    //执行我们之前封装好的move函数

    move()

    }

    }

    move();

    // 接下来就是第三部分:清除定时器:clearInterval(timer)

    clearInterval(timer)

    // setInterval 无限执行;在我们清除定时器的时候,想让定时器无限执行,执行到达一定地步的时候再清除。也就是说让我们inow一直执行 当其小于li标签的个数(长度)的时候再归0.当然这个过程就是我们轮播图片切换的过程。执行时间是2秒。

    timer=setInterval(function(){

    iNow++;

    if(iNow>=_li.length){

    iNow=0;

    }

    move()

    },2000)

    // 第四部分:鼠标移入移除效果:而鼠标移入移除的范围就是在我们设定的div块元素中。

    // 鼠标移入的时候清除定时器。

    _box.onmouseover=function(){

    clearInterval(timer);

    }

    // 鼠标移除的时候开始执行定时器功能。

    _box.onmouseout=function(){

    clearInterval(timer);

    timer=setInterval(function(){

    iNow++;

    if(iNow>=_li.length){

    iNow=0;

    }

    move()

    },2000)

    }

  • 最后编辑于
    ©著作权归作者所有,转载或内容合作请联系作者
    • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
      沈念sama阅读 199,636评论 5 468
    • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
      沈念sama阅读 83,890评论 2 376
    • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
      开封第一讲书人阅读 146,680评论 0 330
    • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
      开封第一讲书人阅读 53,766评论 1 271
    • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
      茶点故事阅读 62,665评论 5 359
    • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
      开封第一讲书人阅读 48,045评论 1 276
    • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
      沈念sama阅读 37,515评论 3 390
    • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
      开封第一讲书人阅读 36,182评论 0 254
    • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
      沈念sama阅读 40,334评论 1 294
    • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
      茶点故事阅读 35,274评论 2 317
    • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
      茶点故事阅读 37,319评论 1 329
    • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
      沈念sama阅读 33,002评论 3 315
    • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
      茶点故事阅读 38,599评论 3 303
    • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
      开封第一讲书人阅读 29,675评论 0 19
    • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
      开封第一讲书人阅读 30,917评论 1 255
    • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
      沈念sama阅读 42,309评论 2 345
    • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
      茶点故事阅读 41,885评论 2 341

    推荐阅读更多精彩内容