js轮播图

简介: js轮播图

话不多说,请看代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title></title>
    </head>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        .banner {
            width: 500px;
            height: 300px;
            overflow: hidden;
        }
        .list {
            width: 400%;
            height: 100%;
            display: flex;
        }
        .list img {
            width: 25%;
            height: 100%;
        }
        .don {
            width: 100%;
            height: 200px;
            display: flex;
        }
        .left {
            position: absolute;
            bottom: 200px;
        }
        .left img {
            width: 100%;
            height: 20px;
        }
        .right {
            position: absolute;
            bottom: 200px;
            left: 480px;
        }
        .right img {
            width: 100%;
            height: 20px;
        }
        .huan{
            display: flex;
            position: absolute;
            bottom: 90px;
            left: 235px;
        }
        .dian {
            width: 10px;
            height: 10px;
            background-color: beige;
            border-radius: 10px;
        }
    </style>
    <body>
        <div class="banner">
            <div class="list">
                <img src="./img/lun3.png" alt="">
                <img src="./img/lun4.png" alt="">
                <img src="./img/lun5.png" alt="">
                <img src="./img/lun3.png" alt="">
            </div>
            <div class="don">
                <div class="left" οnclick="le()">
                    <img src="./img/angle-left.png" alt="">
                </div>
                <div class="right" οnclick="ri()">
                    <img src="./img/angle-right.png" alt="">
                </div>
            </div>
        </div>
        <div class="huan">
            <div class="dian"></div>
            <div class="dian"></div>
            <div class="dian"></div>
        </div>
        <script>
            let list = document.getElementsByClassName("list")[0];
            let banner = document.getElementsByClassName("banner")[0]
            let imgList = list.children;
            let imgWidth = imgList[0].offsetWidth;
            let d = 0;
            let a = setInterval(scrolls, 2000);
            let huan = document.getElementsByClassName("huan")[0]
            let huanArr = huan.children
            function scrolls() {
                d++;
                list.style.transition = "all 1s"
                list.style.marginLeft = -d * imgWidth + "px";
                if (d == imgList.length-1) {
                    setTimeout(function() {
                        d = 0;
                        list.style.transition = "";
                        list.style.marginLeft = "0px";
                    }, 1000)
                    huanArr[0].style.backgroundColor = "red"
                    huanArr[2].style.backgroundColor = "beige"
                }else{
                    huanArr[d].style.backgroundColor = "red"
                    huanArr[d-1].style.backgroundColor = "beige"
                }
            }
            banner.onmouseenter = function() {
                clearInterval(a)
            }
            banner.onmouseout = function() {
                a = setInterval(scrolls, 2000);
            }
            function le() {
                if (d == 0) {
                    d = imgList.length - 1
                    list.style.transition = "";
                    list.style.marginLeft = -d * imgWidth + "px";
                    huanArr[2].style.backgroundColor = "red"
                    huanArr[0].style.backgroundColor = "beige"
                }else{
                    huanArr[d-1].style.backgroundColor = "red"
                    huanArr[d].style.backgroundColor = "beige"
                }
                setTimeout(function() {
                    d--;
                    list.style.transition = "all 1s"
                    list.style.marginLeft = -d * imgWidth + "px";
                }, 0)
            }
            let isstatus = true
            function ri() {
                if (!isstatus) {
                    return
                }
                isstatus = false;
                scrolls();
                setTimeout(function() {
                    isstatus = true;
                }, 1000)
            }
        </script>
    </body>
</html>
相关文章
|
3天前
|
JavaScript
时尚简洁的js轮播图特效插件
这是一款时尚简洁的js轮播图特效插件。该轮播图采用es6语法制作,底部带缩略图和描述信息。图片和描述信息在切换时同步滑动。
|
2月前
|
前端开发
js-基础轮播图制作
js-基础轮播图制作
31 7
|
3月前
|
JavaScript 前端开发
js轮播图练习
文章介绍了如何使用HTML、CSS和JavaScript创建一个简单的轮播图效果。通过`img`标签展示图片,并通过点击下方的点(`span`标签)切换图片。文章提供了完整的HTML结构、CSS样式和JavaScript代码,以及图片的展示和轮播图的效果图。
js轮播图练习
|
2月前
|
JavaScript 前端开发
js轮播图有左右箭头和小点
js轮播图有左右箭头和小点
33 1
|
3月前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。
|
4月前
|
JavaScript
js轮播图制作
js轮播图制作
37 1
|
4月前
|
JavaScript
js轮播图功能
js轮播图功能
24 0
|
4月前
|
前端开发 JavaScript
如何使用JavaScript制作轮播图
如何使用JavaScript制作轮播图
37 0
|
4月前
|
JavaScript
js之简单轮播图
js之简单轮播图
40 0
|
6月前
|
安全 JavaScript
旋转木马轮播图 html+css+js
旋转木马轮播图 html+css+js