首页 > 其他分享 >js原生轮播图

js原生轮播图

时间:2022-11-07 20:46:12浏览次数:47  
标签:原生 style 轮播 -- js newLeft wrap swiper left

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
    <style>
        .swiper {
            width: 800px;
            height: 500px;
            position: relative;
            overflow: hidden;
            background-color: bisque;
        }

        .swiper-box {
            background-color: pink;
            position: absolute;
            left: 0;
            top: 0;
            z-index: 1;
            height: 500px;
        }

        .swiper-box .swiper-item {
            width: 800px;
            height: 500px;
            background-color: aqua;
            float: left;
        }

        .swiper-box .swiper-item img {
            width: 800px;
            height: 500px;
        }
    </style>
</head>

<body>
    <div>
        <div class="swiper">
            <div class="swiper-box" style="left: -800px;">
                <div class="swiper-item">
                    6
                    <!-- <img src="./index_active.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    1
                    <!-- <img src="./index_gray.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    2
                    <!-- <img src="./my_active.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    3
                    <!-- <img src="./my_gray.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    4
                    <!-- <img src="./Tablet.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    5
                    <!-- <img src="./shouxie.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    6
                    <!-- <img src="./index_active.png" alt=""> -->
                </div>
                <div class="swiper-item">
                    1
                    <!-- <img src="./index_gray.png" alt=""> -->
                </div>
            </div>
        </div>
        <div>
            <button onclick="prev()">左</button>
            <button onclick="next()">右</button>
        </div>
    </div>

</body>

</html>
<script>
    var wrap = $('.swiper-box')[0]
    let ok = $('.swiper-item').length
    let domArr = $('.swiper-item')
    let total = 0
    for (let i = 0; i < ok; i++) {
        let aa = $($('.swiper-item')[i]).width()
        total += aa
        console.log('aa', aa);
    }
    console.log('ok', ok);
    $('.swiper-box').css({ width: total + 'px' })

    function prev() {
        console.log('左', wrap.style.left);
        var newLeft
        if (wrap.style.left === '-800px') {
            newLeft = -4800
        } else {
            newLeft = parseInt(wrap.style.left) + 800
        }
        $(wrap).animate({left: newLeft + 'px'})
    }
    function next() {
        console.log('右', wrap.style.left);
        var newLeft
        if (wrap.style.left === '-4800px') {
            newLeft = -800
        } else {
            newLeft = parseInt(wrap.style.left) - 800
        }
        $(wrap).animate({left: newLeft + 'px'},1000)
    }

    var timer = null
    function autoPlay() {
        timer = setInterval(() => {
            next()
        }, 3000);
    }
    autoPlay()
    $('.swiper').mouseenter(function () {
        clearInterval(timer)
    })
    $('.swiper').mouseleave(function () {
        autoPlay()
    })

</script>

  

标签:原生,style,轮播,--,js,newLeft,wrap,swiper,left
From: https://www.cnblogs.com/fanqieyuanzi/p/16867373.html

相关文章

  • luffy之前后端的配置,跨域问题,后端轮播图接口
    一、前端全局配置和js配置#前端vue都会有默认的样式的我们可以把这些默认的样式可以取消掉然后按照没有样式的页面编写#我们可以写一个css取消样式然后在main.js......
  • day27 CSS浮动、溢出 & js基本语法
    接day26CSS=>CSS定位overflow属性值描述示例visible默认值,内容不会被修剪,会呈现在元素框之外hidden内容会被修剪,并且其余内容是不可见的overflow:hidd......
  • js es5和es6
    ES5新增内容严格模式概述:我们普通书写的js代码并没有特别多的规范,甚至在某些时候可以随意发挥,这种模式被称为怪异模式。相对而言一种更加规范化的模式被称为严格模式。严......
  • Python Ujson
    UJson主要记录其安装方式,能使用pipinstallujson进行安装不过好像有点慢,反正我等了很久,也可以使用Python命令进行安装会快一点,命令如下:python-mpipinstallujson ......
  • CMD-SeaJS模块化
    下载sea.js,并引入官网:http://seajs.org/github:https://github.com/seajs/seajs将sea.js导入项目:js/libs/sea.js创建项目结构|-js|-libs|-sea.js|-modules|-mod......
  • jquery(js)实现上滑加载更多内容(分页查询)
    移动端上滑加载更多步骤移动端实现滚动上滑加载更多内容分为以下几步:步骤1禁用系统滚动条使用CSS样式禁用移动端的滚动条,代码如下所示:html,body{width:100%;overflow:hidde......
  • JS中的prototype、__proto__与constructor
    1.前言作为一名前端工程师,必须搞懂JS中的prototype、proto与constructor属性,相信很多初学者对这些属性存在许多困惑,容易把它们混淆,本文旨在帮助大家理清它们之间的关......
  • 格式校验js
    letutil={};//将json格式转成echartdata格式util.jsonToList=functionjsonToList(json){if(json){returnObject.keys(json).map(key=>{......
  • Selenium + Jsoup 抓取豆瓣演员图片
    依赖<dependency><groupId>org.jsoup</groupId><artifactId>jsoup</artifactId><version>1.13.1</version></d......
  • 细说Js中的this
    为什么使用this先看个例子:functionidentity(){returnthis.name.toUpperCase();}functionspeak(){return"Hello,i'm"+identity.call(this);}va......