乱码乱a∨中文字幕,在线免费激情视频,亚洲欧美久久夜夜潮,国产在线网址

  1. <sub id="hjl7n"></sub>

    1. <sub id="hjl7n"></sub>

      <legend id="hjl7n"></legend>

      當(dāng)前位置:首頁 >  IDC >  服務(wù)器 >  正文

      HTML+CSS+JS實(shí)現(xiàn)堆疊輪播效果的示例代碼

       2020-10-16 14:08  來源: 腳本之家   我來投稿 撤稿糾錯(cuò)

        阿里云優(yōu)惠券 先領(lǐng)券再下單

      這篇文章主要介紹了HTML+CSS+JS實(shí)現(xiàn)堆疊輪播效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

      效果:

      輪播圖在向一個(gè)方向移動的同時(shí),要對其每一個(gè)圖片的大小,位置,透明度以及層級進(jìn)行改變

      原理:

      輪播圖向左移動時(shí)將第一個(gè)子元素剪切到末尾,輪播圖向右移動時(shí),將末尾子元素剪切到最前面,以此實(shí)現(xiàn)無縫輪播效果,再因?yàn)閘i剪切后,下一個(gè)li會補(bǔ)上(例如第一個(gè)子元素被剪切到最后時(shí),第二個(gè)字元素會補(bǔ)上成為第一個(gè)子元素),所以li下標(biāo)不變,以次來修改每一個(gè)位置的li的屬性(大小,位置,透明度,層級)

      HTML代碼:

      <body>
      <div class="smallBox">
      <div class="arrowLeft">←</div>
      <div class="smallPicBox"> //用一個(gè)div存放一個(gè)ul,并對ul里的每一個(gè)li進(jìn)行初始樣式設(shè)置
      <ul>
      <li id="li1" style="position: absolute;top:calc(50% - 200px);left: 0px;z-index:1;background-color: aqua;transform: scale(0.5);transition: 0.3s;opacity: 0.5;background-image: url(./images/01.jpg);background-size: cover;"></li>
      <li id="li2" style="position: absolute;top:calc(50% - 200px);left: 150px; z-index:2;background-color: red;transform: scale(0.7); transition: 0.3s;opacity: 0.7;background-image: url(./images/02.jpg);background-size: cover;"></li>
      <li id="li3" style="position: absolute;top:calc(50% - 200px);left: 300px; z-index:3;background-color: blue;transform: scale(0.9); transition: 0.3s;opacity: 0.9;background-image: url(./images/03.jpg);background-size: cover;"></li>
      <li id="li4" style="position: absolute;top:calc(50% - 200px);left: 450px; z-index:4;background-color: green;transform: scale(1); transition: 0.3s;opacity: 1;background-image: url(./images/04.jpg);background-size: cover;"></li>
      <li id="li5" style="position: absolute;top:calc(50% - 200px);left: 600px; z-index:3;background-color: yellow;transform: scale(0.9); transition: 0.3s;opacity: 0.9;background-image: url(./images/05.jpg);background-size: cover;"></li>
      <li id="li6" style="position: absolute;top:calc(50% - 200px);left: 750px; z-index:2;background-color: gray;transform: scale(0.7); transition: 0.3s;opacity: 0.7;background-image: url(./images/06.jpg);background-size: cover;"></li>
      <li id="li7" style="position: absolute;top:calc(50% - 200px);left: 900px; z-index:1;background-color: deeppink;transform: scale(0.5); transition: 0.3s;opacity: 0.5;background-image: url(./images/07.jpg);background-size: cover;"></li>
      </ul>
      </div>
      <div class="arrowRight">→</div>
      </div>
      </div>
      </body>

      CSS代碼:

      <style>
      *{
      margin: 0;
      padding: 0;
      list-style: none;
      }
      .albumBox{
      width: 1200px;
      height: 400px;
      margin: 0 auto;
      border: 1px solid #000;
      }

      .smallBox{
      height: 400px;
      line-height: 400px;
      position: relative;
      }
      .smallPicBox{
      width: 1100px;
      height: 400px;
      float: left;
      position: relative;
      }
      .smallPicBox ul{
      width: 100%;
      height: 400px;
      }
      .smallPicBox li{
      width: 320px;
      height: 400px;
      float: left;
      border: 1px solid #000;
      box-sizing: border-box;
      }
      .smallBox .current::after{
      content: "\25b2";
      position: absolute;
      top: -31px;
      left: 70px;
      color: red;

      }
      .arrowLeft{
      width: 50px;
      height: 400px;
      position: absolute;
      left: 0;
      border: 1px solid #000;
      box-sizing: border-box;
      background-color: gray;
      z-index: 10;
      }
      .arrowRight{
      width: 50px;
      height: 400px;
      position: absolute;
      right: 0;
      border: 1px solid #000;
      box-sizing: border-box;
      background-color: gray;
      z-index: 10;
      }
      </style>

      JS代碼:

      <script>
      var arrowLeft=document.querySelector(".arrowLeft")
      var arrowRight=document.querySelector(".arrowRight")
      var ul=document.querySelector(".smallPicBox ul")
      var li=document.querySelectorAll(".smallPicBox li")
      var timerId=0
      arrowLeft.onclick=function(){ //左箭頭點(diǎn)擊事件
      li=document.getElementsByTagName('li')
      ul.appendChild(li[0]) //將ul的第0個(gè)子元素剪切到末尾,實(shí)現(xiàn)無縫輪播
      posi(li) //修改每一個(gè)li的屬性
      }
      arrowRight.onclick=function(){ //右箭頭點(diǎn)擊事件
      li=document.getElementsByTagName('li') //重新獲取li
      ul.insertBefore(li[6],li[0]) //將ul的最后一個(gè)子元素剪切到最前面,實(shí)現(xiàn)無縫輪播
      posi(li) //修改每一個(gè)li的屬性
      }

      function posi(li){ //修改li屬性函數(shù)
      var n1=0
      for(var x=0;x<li.length;x++){ //修改位置
      li[x].style.left=n1+'px'
      n1=n1+150
      }
      for(var i=0;i<li.length/2;i++){ //修改層級
      li[i].style.zIndex=i+1
      li[li.length-1-i].style.zIndex=i+1
      }
      li[3].style.zIndex='4'
      var n2=0.3
      for(var j=0;j<li.length/2;j++){ //縮放
      n2=parseFloat(n2+0.2)
      li[j].style.transform='scale('+n2+')'
      li[li.length-1-j].style.transform='scale('+n2+')'
      }
      li[3].style.transform='scale(1)'
      var n3=0.3
      for(var k=0;k<li.length/2;k++){ //修改透明度
      n3=parseFloat(n3+0.2)
      li[k].style.opacity=n3
      li[li.length-1-k].style.opacity=n3
      }
      li[3].style.opacity='1'
      }
      //鼠標(biāo)移入移出
      temerId=setInterval(function(){
      arrowLeft.click()
      }, 1000);
      arrowLeft.onmouseover=function(){
      clearInterval(temerId)
      }
      arrowLeft.onmouseout=function(){
      temerId=setInterval(function(){
      arrowLeft.click()
      }, 1000);
      }
      arrowRight.onmouseover=function(){
      clearInterval(temerId)
      }
      arrowRight.onmouseout=function(){
      temerId=setInterval(function(){
      arrowLeft.click()
      }, 1000);
      }
      </script>

      注:本例js是直接寫在body里的,也可以單獨(dú)寫一個(gè)js文件,在引入到html界面

      文章來源:腳本之家,原文鏈接:https://www.jb51.net/css/744188.html

      申請創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

      相關(guān)標(biāo)簽
      CSS

      相關(guān)文章

      熱門排行

      信息推薦