国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

讓圖片跳躍起來 javascript圖片輪播特效

2019-11-20 10:35:31
字體:
供稿:網(wǎng)友

圖片輪播效果,在現(xiàn)在的網(wǎng)站的首頁,差不多是必備的效果顯示. 所以我從三個方面來講解這一效果的簡單實現(xiàn).

  • 圖片跳動起來
  • 圖片序列控制的實現(xiàn)
  • 前后按鈕控制的實現(xiàn)

這篇文章來看圖片按照間隔時間進行切換.

我們先把結(jié)構(gòu)代碼完成,這個我就不做詳細的講解了.看效果

代碼如下:

<!DOCTYPE html><html><head>  <meta charset="UTF-8">  <title></title>  <style>    * {      box-sizing: border-box;    }    a {      text-decoration: none;    }    ul,ol,li{     list-style: none;      margin: 0;      padding: 0;    }    #slider{      width: 800px;      height: 300px;      overflow: hidden;      position: relative;      margin: 0 auto;    }    #slider ul{      width: 2400px;      position: relative;    }    #slider ul:after{      content: " ";      width: 0;      height: 0;      display: block;    }    #slider ul li{      float: left;      width: 800px;      height: 300px;      overflow: hidden;    }    #slider ul li img{      width: 100%;    }    #slider ol{      position: absolute;      bottom: 10px;      left: 46%;    }    #slider ol li{      display: inline-block;    }    #slider ol li a{      display: inline-block;      padding:4px 8px;      border-radius:15px;      background-color: #000;      color: #fff;    }    #slider .prev, #slider .next{      display: inline-block;      position: absolute;      top: 49%;      background-color: #000;      opacity: 0.6;      color: #fff;      padding: 3px;    }    #slider .prev{      left: 10px;    }    #slider .next{      right: 10px;    }  </style></head><body>    <div id="slider">    <ul>      <li> <img src="http://www.bates-hewett.com/images/sliders/slider-1.jpg" /> </li>      <li> <img src="http://www.bates-hewett.com/images/sliders/slider-2.jpg" /> </li>      <li> <img src="http://www.bates-hewett.com/images/sliders/slider-3.jpg" /> </li>    </ul>    <ol>      <li> <a href="#">1</a> </li>      <li> <a href="#">2</a> </li>      <li> <a href="#">3</a> </li>    </ol>    <a href="#">上一張</a>    <a href="#">下一張</a>  </div></body></html>

好的,現(xiàn)在我們來通過JS控制圖片的跳轉(zhuǎn).

首先我們需要找到圖片所在的位置,這里我們是通過ul來進行布局的所以首先得找到UL下的LI的數(shù)目

接著讓圖片一張一張的展示,我們使用了視窗的模式,就是遮罩層的模式.#slider是一個視窗,ul是視窗外的景色,而ul得景色是橫向排版的

然后就是讓外面的景色顯示為視窗的大小,也就是讓每一張圖片作為每一次的視窗景色,這里就是控制圖片的大小要與視窗同等大小.

上面講解的是一個概念,也就是布局的處理,下面我們JS的控制了,要實現(xiàn)圖片間隔的顯示不同.我們就需要用到JS的setInterval或者setTimeout.這里我們使用setInterval(因為這個用起來方便.)

每跳轉(zhuǎn)一次,我們控制的是UL的position的left,這樣就可以讓ul下的景色,在每一次都是顯示不一樣,而這個left是根據(jù)視窗的寬度來決定,第一張left當然是-800 * 0 ,第二種就是 -800*1,第三種是-800*2...依次類推.那我們就可以得出下面的代碼

<script>   (function(){     var slider = document.getElementById("slider");     var imgul = slider.getElementsByTagName("ul")[0];     var imglis = imgul.getElementsByTagName("li");     var len = imglis.length;     var index = 0;     setInterval(function(){       if(index >= len){         index = 0;       }        imgul.style.left = - (800 * index) + "px";        index++;     },2000);   })(); </script>

JS代碼這樣看起來就很簡單了. 我這里是設(shè)置2秒跳轉(zhuǎn)依次,然后跳轉(zhuǎn)的次數(shù)大于等于圖片的數(shù)目后,讓其返回到第一張圖片.

希望本文所述對大家學習javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 板桥市| 噶尔县| 宁陕县| 双峰县| 宾川县| 元氏县| 宜阳县| 东乡| 吉安县| 大城县| 井研县| 固安县| 永川市| 大埔区| 秦皇岛市| 衡东县| 绥江县| 天等县| 鹿邑县| 阳新县| 江源县| 平阴县| 得荣县| 乌鲁木齐县| 芒康县| 天门市| 彭阳县| 洮南市| 日照市| 大姚县| 临夏县| 巴里| 台南县| 开封县| 兖州市| 项城市| 扎兰屯市| 治多县| 许昌县| 揭阳市| 固安县|