最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS輪播圖的實現(xiàn)方法2

 更新時間:2020年08月25日 08:39:44   作者:hthththtt  
這篇文章主要為大家詳細介紹了JS輪播圖的具體實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了JS輪播圖的實現(xiàn)代碼,供大家參考,具體內(nèi)容如下

需求:

自動輪播,鼠標移入輪播停止、移出繼續(xù),小圓點點擊切圖,左右箭頭切圖

效果圖:

![輪播圖]

思路:

將所有需要輪播的圖片橫向排列,可視區(qū)大小設置為只能顯示一張圖片,給容器設置移出隱藏后,可視區(qū)之外的部分被隱藏,這樣我們就只能看見一張圖片。
輪播實現(xiàn)是改變整個圖片畫幅的left值或者margin-left 值,當點擊時移動整個畫幅單個圖片的寬度即可實現(xiàn)滾動到下一張。
后面功能實現(xiàn)順序依舊是寫法一里的思路。

戳!寫法一地址

HTML部分:

<div id="banner">
 <div class="w">
<!-- 左右箭頭-->
 <span class="iconfont icon-zuojiantou"></span>
 <span class="iconfont icon-youjiantou"></span>
<!-- 輪播圖-->
 <ul >
 <li><img src="img/1.jpg" alt=""></li>
 <li><img src="img/2.jpg" alt=""></li>
 <li><img src="img/3.jpg" alt=""></li>
 </ul>
<!-- /小圓點-->
 <ol id="circleContainer">

 </ol>
 </div>
</div>

CSS部分:

<style>
 *{
 margin: 0;
 padding: 0;
 list-style: none;
 }
 .w {
 width: 1000px;
 height: 600px;
 margin: 100px auto 0;
 position: relative;
 overflow: hidden;
 }
 ul {
 width: 1000%;
 transition: all .5s ease-in-out;
 }
 ul li {
 float: left;
 width: 1000px;
 }
 ul li img {
 width: 100%;
 height: 600px;
 }
 .iconfont {
 color: white;
 position: absolute;
 font-size: 30px;
 top: calc(50% - 15px);
 background-color: rgba(216, 216, 216, 0.23);
 border-top-right-radius: 50%;
 border-bottom-right-radius: 50%;
 cursor: pointer;
 }
 .iconfont:hover {
 color: palegreen;
 }
 .icon-zuojiantou {
 left: 0;
 }
 .icon-youjiantou {
 right: 0;
 }
 #circleContainer {
 position: absolute;
 bottom: 10px;
 left: calc(50% - 30px);
 }
 #circleContainer li {
 display: inline-block;
 width: 20px;
 height: 20px;
 border-radius: 50%;
 background-color: white;
 margin-right: 5px;
 }
 #circleContainer .change {
 background-color: palegreen;
 }
</style>

JS部分:

<script>
 let timer = setInterval(function () {
 arrow_r.onclick();
 },2000);
 let w = document.querySelector(".w");
 w.addEventListener("mouseenter",function () {
 clearInterval(timer);
 });
 w.addEventListener("mouseleave",function () {
 clearInterval(timer);
 timer = setInterval(function () {
 arrow_r.onclick();
 },2000);
 });
 //獲取元素
 let ul = document.querySelector("ul");
 let ol = document.querySelector("#circleContainer");
 let arrow_r = document.querySelector(".icon-youjiantou");
 let arrow_l = document.querySelector(".icon-zuojiantou");
 let ImgWidth = ul.children[0].offsetWidth;
 let location_i = 0 ;
 // 創(chuàng)建小圓點 動態(tài)生成小圓點,圖片增加時小圓點也隨之增加
 for (let i = 0; i<ul.children.length;i++){
 let li = document.createElement("li");
 li.setAttribute("index",i);
 li.addEventListener("click",function () {
 let index = this.getAttribute("index");
 move(ul,index);
 location_i = index ;
 });
 ol.appendChild(li);
 }

 let liclone = ul.children[0].cloneNode(true);
 ul.appendChild(liclone);
 // 輪播函數(shù)
 function move(targetObj,n) {
 if (n === targetObj.children.length ) {
 targetObj.style.marginLeft = "0px";
 n = 0;
 }
 targetObj.style.marginLeft = -n * ImgWidth +"px";
 for (let i =0 ;i<ol.children.length;i++){
 ol.children[i].className = "";
 }
 n === 3 ? ol.children[0].className = "change": ol.children[n].className = "change";

 }
 ol.children[0].className = "change";
 // 右箭頭點擊
 arrow_r.onclick = function () {
 if (location_i === 3) {
 location_i = 0 ;
 ul.style.marginLeft = "0px" ;
 }
 location_i++;
 move(ul,location_i);

 };
 // 左箭頭點擊
 arrow_l.addEventListener("click",function () {
 if (location_i == 0) {
 location_i = ul.children.length -1 ;
 }
 location_i--;
 move(ul,location_i);
 })
</script>

精彩專題分享:jQuery圖片輪播 JavaScript圖片輪播 Bootstrap圖片輪播

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 淺析創(chuàng)建javascript對象的方法

    淺析創(chuàng)建javascript對象的方法

    下面小編就為大家?guī)硪黄獪\析創(chuàng)建javascript對象的方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • javascript去除字符串中所有標點符號和提取純文本的正則

    javascript去除字符串中所有標點符號和提取純文本的正則

    這篇文章主要介紹了javascript去除字符串中所有標點符號和提取純文本的正則,需要的朋友可以參考下
    2014-06-06
  • 利用MutationObserver實現(xiàn)計算首屏時間

    利用MutationObserver實現(xiàn)計算首屏時間

    在前端開發(fā)中,優(yōu)化頁面性能是至關重要的,計算首屏時間是衡量網(wǎng)頁性能的重要指標,本文將介紹如何使用MutationObserver來獲取首屏時間的最佳實踐,感興趣的可以了解下
    2023-07-07
  • js對象屬性名駝峰式轉(zhuǎn)下劃線的實例代碼

    js對象屬性名駝峰式轉(zhuǎn)下劃線的實例代碼

    這篇文章主要介紹了js對象屬性名駝峰式轉(zhuǎn)下劃線的實例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 微信小程序3D輪播實現(xiàn)代碼

    微信小程序3D輪播實現(xiàn)代碼

    這篇文章主要介紹了微信小程序3D輪播實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • JavaScript實現(xiàn)購物車圖片局部放大預覽效果

    JavaScript實現(xiàn)購物車圖片局部放大預覽效果

    這篇文章主要為大家詳細介紹了JavaScript如何通過canvas簡單實現(xiàn)購物車圖片放大預覽效果,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-03-03
  • JS實現(xiàn)一個按鈕的方法

    JS實現(xiàn)一個按鈕的方法

    這篇文章主要介紹了JS實現(xiàn)一個按鈕的方法,實例分析了使用js實現(xiàn)一個按鈕的功能與相關技巧,需要的朋友可以參考下
    2015-02-02
  • 小程序?qū)崿F(xiàn)輪播圖

    小程序?qū)崿F(xiàn)輪播圖

    這篇文章主要為大家詳細介紹了小程序?qū)崿F(xiàn)輪播圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • BootStrap中的表單大全

    BootStrap中的表單大全

    這篇文章主要介紹了BootStrap中的表單大全,包括基礎表單,內(nèi)聯(lián)表單和水平表單等知識,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • 用window.onerror捕獲并上報Js錯誤的方法

    用window.onerror捕獲并上報Js錯誤的方法

    這篇文章主要介紹了用window.onerror捕獲并上報Js錯誤的方法,需要的朋友可以參考下
    2016-01-01

最新評論

丹寨县| 永昌县| 崇信县| 汉寿县| 托克逊县| 合山市| 惠州市| 临桂县| 翁源县| 封丘县| 射阳县| 静海县| 洛川县| 天等县| 玉溪市| 黄冈市| 淮滨县| 翁牛特旗| 唐河县| 讷河市| 民乐县| 荆州市| 清徐县| 三穗县| 敦化市| 阿克苏市| 武汉市| 明星| 景洪市| 龙州县| 多伦县| 文昌市| 革吉县| 安吉县| 田阳县| 安仁县| 安丘市| 沾化县| 白朗县| 湘阴县| 鞍山市|