亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用JavaScript制作一個炫酷的輪播圖

發布時間:2020-11-09 15:00:00 來源:億速云 閱讀:137 作者:Leah 欄目:開發技術

這篇文章運用簡單易懂的例子給大家介紹利用JavaScript制作一個炫酷的輪播圖,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>面試必備輪播圖</title>
  <link rel="stylesheet" href="demo.css" rel="external nofollow" >
</head>

<body>
  <div class="wrapper" id="wrap">
    <img src="./images/1.png" alt="">
    <img src="./images/2.png" alt="">
    <img src="./images/3.png" alt="">
    <img src="./images/4.png" alt="">
    <img src="./images/5.png" alt="">
  </div>
  <script src="jquery.min.js"></script>
  <script src="index.js"></script>

</body>

</html>

JS代碼

var oImg = $('img');
// 默認中間展示索引值為0的這張圖片
var curDisplay = 0;
// 將圖片分散排列

// 獲得圖片個數
var len = oImg.length;

// 定時器
var timer;

function init() {
  initalCarousel();
  bindEvent();
}
init();

function initalCarousel() {
  // 獲得中間圖片
  console.log($('img'))
  var hLen = Math.floor(oImg.length / 2);
  // rNum,lNum分別是分散在中間圖片左右左右兩側的圖片索引
  var rNum, lNum;
  for (var i = 0; i < hLen; i++) {
    lNum = curDisplay - i - 1;
    // console.log(lNum)
    // 分別讓分散在左右兩側的圖片平移旋轉
    oImg.eq(lNum).css({
      transform: 'translateX(' + (-150 * (i + 1)) + 'px) translateZ(' + (200 - i * 100) + 'px) rotateY(30deg)'
    });
    rNum = curDisplay + i + 1;
    // 如果運動到最后一張 循環運動
    if (rNum > oImg.length - 1) {
      rNum -= oImg.length;
    }
    oImg.eq(rNum).css({
      transform: 'translateX(' + (150 * (i + 1)) + 'px) translateZ(' + (200 - i * 100) + 'px) rotateY(-30deg)'
    });
    oImg.removeClass('active');
  }

  // 當前顯示圖片直接z軸向前移動 同時添加class名作為標記
  
  oImg.eq(curDisplay).css({
    transform: 'translateZ(300px)'
  }).addClass('active');

}
// 點擊事件
function bindEvent() {
  // 在每一張圖片上綁定上點擊事件
  oImg.on('click', function (e) {
    // 判斷點擊圖片不是第一張顯示圖片 
    if (!$(this).hasClass('active')) {
      // 標記圖片flag切換
      // 改變當前顯示圖片索引
      curDisplay = $(this).index();
      initalCarousel();
    }
    // 鼠標覆蓋 清除自動輪播定時器
  }).hover(function () {
    clearInterval(timer);
    // 鼠標移走 繼續輪播
  }, function () {
    play();
  });
}
// 自動播放
function play() {
  timer = setInterval(function () {
    if (curDisplay == len - 1) {
      curDisplay = 0;
    } else {
      curDisplay++;
    }
    initalCarousel();
  }, 2000);
}

CSS樣式

*{
  margin:0;
  padding:0;
}
.wrapper{
  position: relative;
  transform-style: preserve-3d;
  perspective: 800px;
  /* border:1px solid black; */
  height:200px;
  margin-top:200px;
}
.wrapper img{
  position: absolute;
  left: 50%;
  top: 50%;
  width: 300px;
  height: 200px;
  margin-left: -150px;
  margin-top: -100px;
  border-radius: 8px;
  transition: transform 0.5s ease-in-out;
}

關于利用JavaScript制作一個炫酷的輪播圖就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屏南县| 荥阳市| 赣州市| 天气| 饶平县| 菏泽市| 额敏县| 永平县| 郯城县| 邢台市| 孙吴县| 永嘉县| 静宁县| 大城县| 大渡口区| 丰原市| 昌乐县| 阜城县| 天台县| 马山县| 江安县| 舟曲县| 威信县| 安西县| 临夏市| 岑巩县| 遵义县| 长武县| 黄陵县| 南丹县| 庆云县| 宁陵县| 含山县| 和静县| 新邵县| 浦江县| 同仁县| 龙泉市| 萨迦县| 克什克腾旗| 吴堡县|