Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

简单html图片轮播完整代码

作者:木の兮   发布日期:2025-04-20   浏览:91

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片轮播</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        .carousel {
            width: 600px;
            height: 400px;
            overflow: hidden;
            position: relative;
            margin: 50px auto;
        }
        .carousel img {
            width: 100%;
            height: 100%;
            display: none;
        }
        .carousel img:first-child {
            display: block;
        }
        .carousel .prev, .carousel .next {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(0, 0, 0, 0.5);
            color: white;
            border: none;
            padding: 10px;
            cursor: pointer;
        }
        .carousel .prev {
            left: 10px;
        }
        .carousel .next {
            right: 10px;
        }
    </style>
</head>
<body>
    <div class="carousel">
        <img src="https://via.placeholder.com/600x400?text=Image+1" alt="Image 1">
        <img src="https://via.placeholder.com/600x400?text=Image+2" alt="Image 2">
        <img src="https://via.placeholder.com/600x400?text=Image+3" alt="Image 3">
        <button class="prev">❮</button>
        <button class="next">❯</button>
    </div>

    <script>
        let currentIndex = 0;
        const images = document.querySelectorAll('.carousel img');
        const totalImages = images.length;

        function showImage(index) {
            images.forEach((img, i) => {
                img.style.display = i === index ? 'block' : 'none';
            });
        }

        function nextImage() {
            currentIndex = (currentIndex + 1) % totalImages;
            showImage(currentIndex);
        }

        function prevImage() {
            currentIndex = (currentIndex - 1 + totalImages) % totalImages;
            showImage(currentIndex);
        }

        document.querySelector('.next').addEventListener('click', nextImage);
        document.querySelector('.prev').addEventListener('click', prevImage);

        // 自动播放
        setInterval(nextImage, 3000);
    </script>
</body>
</html>

解释说明:

  1. HTML结构

    • 创建了一个包含多张图片的<div>容器,用于展示图片轮播。
    • 添加了两个按钮(prevnext),用于手动切换图片。
  2. CSS样式

    • 设置了轮播容器的尺寸和布局,并隐藏多余的图片。
    • 定义了按钮的位置和样式,使其位于图片的左右两侧。
  3. JavaScript逻辑

    • 使用querySelectorAll获取所有图片元素,并定义了当前显示的图片索引。
    • showImage函数用于根据索引显示对应的图片。
    • nextImageprevImage函数分别用于切换到下一张和上一张图片。
    • 通过addEventListener为按钮添加点击事件,实现手动切换图片。
    • 使用setInterval实现了自动播放功能,每隔3秒切换到下一张图片。

上一篇:html 空格代码

下一篇:svg html

大家都在看

静态html源码

ios打开html

colspan在html中是什么意思

xml转html

html时间代码

html2canvas使用

html标题标签是什么

html 换行符号

html中b标签的作用

html美化代码

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站