首页 > 其他分享 >js自动播放【轮播图】

js自动播放【轮播图】

时间:2023-12-04 16:56:48浏览次数:36  
标签:轮播 image clearInterval intervalId js currentIndex 自动播放 imageList

demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Auto Carousel</title>
    <style>
        #carousel-container {
            width: 300px;
            overflow: hidden;
        }

        #image-list {
            display: flex;
            transition: transform 0.5s ease-in-out;
        }

        .carousel-image {
            width: 300px;
            height: 200px;
            object-fit: cover;
        }
    </style>
</head>
<body>

<div id="carousel-container">
    <div id="image-list">
        <img class="carousel-image" src="../bg2.jpg" alt="Image 1">
        <img class="carousel-image" src="../bg2.jpg" alt="Image 2">
        <img class="carousel-image" src="../bg2.jpg" alt="Image 3">
        <!-- Add more images as needed -->
    </div>
</div>

<script>
    const imageList = document.getElementById('image-list');
    let currentIndex = 0;
    let direction = 1; // 1 for forward, -1 for backward

    function updateCarousel() {
        const transformValue = -currentIndex * 300; // 300 is the width of each image
        imageList.style.transform = `translateX(${transformValue}px)`;
    }

    function nextSlide() {
        currentIndex += direction;

        // 检查我们是否到达终点并相应地改变方向
        if (currentIndex === imageList.children.length - 1 || currentIndex === 0) {
            direction *= -1;
        }

        updateCarousel();
    }

    // 设置定时器,每隔一定时间切换到下一张图片
    const intervalId = setInterval(nextSlide, 2000); // 切换间隔为2秒

    // 如果需要停止轮播,可以使用 clearInterval(intervalId);

    // 可选:在鼠标悬停时停止轮播
    imageList.addEventListener('mouseenter', () => clearInterval(intervalId));
    imageList.addEventListener('mouseleave', () => {
        clearInterval(intervalId);
        intervalId = setInterval(nextSlide, 2000);
    });
</script>

</body>
</html>

标签:轮播,image,clearInterval,intervalId,js,currentIndex,自动播放,imageList
From: https://www.cnblogs.com/code3/p/17875363.html

相关文章

  • daemon.json完整配置
    2023-12-04ubuntu安装好docker后,Docker配置文件默认在/etc/docker/daemon.json修改配置文件/etc/docker/daemon.json,进入/etc/docker目录。查看是否有daemon.json文件,没有则执行如下命令创建。touchdaemon.json刚开始文件是空的,添加文件内容配置如下:{"registry-mirrors......
  • js获取时间戳转化成日期格式的直接使用和封装
     一、在页面中直接使用1. 通过模板字符串使用:{{times}}2. 定义变量存放时间:data(){return{times:"",};},3. 在mounted()方法里调用:mounted(){constdate=newDate();constY=date.getFullYear();constM=date.getMonth()+1<10?"0"......
  • SpringBoot+MybatisPlus 存json读json
    基础环境springboot2.5.3mysql8.0.22fastjson22.0.38主要配置1.返回VO字段添加注解@ApiModelProperty("字段内容")@TableField(typeHandler=JacksonTypeHandler.class)privateList<JSONObject>columnContent;2.返回Mapper中的resultMap中字段添加......
  • 页面滚动点击返回至顶部,js怎么实现
    当页面要滚回顶部时,使用scrollTop属性,设置值为0即可当页面具有DOCTYPE,或者说指定了DOCTYPE时,使用document.documentElement.scrollTop。当页面不具有DOCTYPE,或者说没有指定了DOCTYPE时,使用document.body.scrollTop。为了兼容各种情况,建议同时使用这两种写法。documen......
  • emscripten 中c 代码引用外部js 函数
    主要是一个简单的学习,webassebly支持通过import调用环境的函数(比如调用浏览器或者nodejs中的一些方法)简单说明方法很多,包含了emscripten提供的调用js的宏,但是以下使用了一个emscripten提供的--js-library功能--js-library简单说明--js-library主要是实现emcc在编译的时......
  • JSON
    JSON.stringify和JSON.parseJSON.stringify():作用:用于将JavaScript对象或值转换为JSON字符串语法:JSON.stringify(value[,replacer[,space]])value:要转换为JSON字符串的值replacer(可选):用于控制转换过程的函数或数组space(可选):控制结果字......
  • 后端 Java 对象转 json(不用第三方依赖的拼接方式)
    需求:编写工具类要尽可能不用任意一个jar包依赖,或者尽可能精简原有数据:ArpsParams{actualProduction=[{mouth=2022-07,oilProdDaily=366088.33},{mouth=2022-08,oilProdDaily=380806.78}],predictionSegment=[{mouth=2022-07,oilProdDaily=367832.31},{mouth=2022-0......
  • 全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
    JSSDK使用步骤步骤一:绑定安全域名:先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。步骤二:引入JS文件:在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.6.0.js如需进一步提升服务稳定性,当上述资源不......
  • dump 日志收集与分析(jmap 和 jstack 工具)讲解与实战操作
    目录一、概述二、常见的dump工具三、dump可能会导致进程卡住风险(生产谨慎操作)四、安装JDK五、jmap介绍与示例讲解1)jmap介绍2)Kafka安装(单机)1、下载安装包2、配置环境变量3、配置kafka3、配置ZooKeeper4、启动kafka5、验证3)示例讲解【示例一】执行jmap命令查看内存使用情况【......
  • vue3中css使用js中的变量
    <scriptsetuplang="ts">import{SoundOutlined}from'@ant-design/icons-vue'constprops=defineProps({title:{type:String,default:''},color:{type:String,default:'#000'}......