JQuery 輪播圖

JQuery輪播圖

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>JQ輪播圖</title>
</head>
<style>
    * {
        margin: 0;
        padding: 0;
    }
    li {
        list-style: none;
    }
    #center {
        width: 800px;
        height: 600px;
        margin: auto;
        background-color: black;
        /*做爲ul定位的父級*/
        position: relative;
    }
    #center:hover #ul1{
        display: block;
    }
    /*左右箭頭*/
    #ul1 {
        position: relative;
        top: 40%;
        display: none;
    }
    #ul1 li {
        font-size: 80px;
        color: white;
    }
    /*四個點*/
    #ul2 {
        position: absolute;
        top: 92%;
        left: 40%;
    }
    #ul2 li {
        width: 20px;
        height: 20px;
        border: 3px slateblue solid;
        /*透明度*/
        opacity: 0.7;
        /*將li的邊框設置爲圓*/
        border-radius: 50%;
        float: left;
        margin-left: 10px;
        position: relative;
    }
    #ul1 li:hover {
        color: aqua;
    }
    #ul2 li:hover {
        background-color: darkseagreen;
    }
    #imgs li{
        /*定位使四張圖片重疊在一塊兒*/
        position: absolute;
    }
    .on{
        background-color: darkseagreen;
    }
</style>
<body>
<div id="center">
    <ul id="imgs">
        <li><a href="javascript:void(0)"><img src="http://imgsrc.baidu.com/forum/pic/item/9e3df8dcd100baa1436c441e4710b912c9fc2ed6.jpg"></a></li>
        <li><a href="javascript:void(0)"><img src="http://www.datongchun.com/upload/image/20150817101824_89175.jpg" ></a></li>
        <li><a href="javascript:void(0)"><img src="http://img2.imgtn.bdimg.com/it/u=1563165482,1097507544&fm=214&gp=0.jpg" ></a></li>
        <li><a href="javascript:void(0)"><img src="http://hiphotos.baidu.com/%D4%C6%C8%B8%B5%C4%B3%E7%B0%DD%D5%DF/pic/item/c6ba270b9a23e670e9248891.jpg"></a></li>
    </ul>
    <ul id="ul1">
        <li><span style="float:left" >&lt;</span></li>
        <li><span style="float: right" >&gt;</span></li>
    </ul>
    <ul id="ul2">
        <li class="li_dot"></li>
        <li class="li_dot"></li>
        <li class="li_dot"></li>
        <li class="li_dot"></li>
    </ul>
</div>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>
<script>
    // 獲取圖片
    var imgs = $("#imgs li");
    // 獲取箭頭
    var change = $("#ul1 li");
    // 獲取圓點
    var li_dot = $("#ul2 li");
    // 圖片數量
    var len = imgs.length;
    //  當前圖片的索引
    var first =0;
    var timer;
    // 圓點點擊事件
    li_dot.click(function () {
        var num = $(this).index();
        if(num != first){
            ani(num);
        }
    });
    // 箭頭點擊事件
    change.click(function () {
        // 當前圖片的索引
        var num = first;
        if($(this).index()){
            // 向右翻圖
            num ++;
            // 圖片數量的餘數即爲索引
            num %= len;
        }else {
            // 向左翻圖
            num --;
            //當索引小於0時,從最後一張開始
            if (num<0) num=len-1;
        }
        ani(num);
    });
    // 變化函數
    function ani(num) {
        //將以前的圖片,去除樣式和隱藏
        li_dot.eq(first).removeClass("on");
        imgs.eq(first).fadeOut(800);
        //對如今選中的圖片,增長樣式和顯示
        first = num;
        li_dot.eq(first).addClass("on");
        imgs.eq(first).fadeIn(800);
    }
    // 定時器:輪播
    function auto() {
        timer = setInterval(function () {
            var num = first;
            num++;
            num %= len;
            ani(num);
        },2000)
    }
    // 清除輪播:鼠標移上去時,中止輪播,移開時,繼續輪播
    $("#center").hover(function () {
        clearInterval(timer);
    },auto);

    // 隱藏全部圖片,並只顯示第一張圖片
    imgs.hide().eq(0).show();
    //添加 class:on,表示選中
    li_dot.eq(0).addClass("on");
    //定時輪播
    auto();
</script>
</body>
</html>
相關文章
相關標籤/搜索