LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

【JavaScript】Js带小图的轮播大图效果,附源码

admin
2026年2月12日 10:59 本文热度 180

  完整源码  

HTML
<!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>展示轮播图</title>  <link rel="stylesheet" href="index.css"></head>
<body>  <!-- 容器 -->  <div class="container">    <!-- 图片容器 -->    <div class="slide">      <div class="item item1">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>      <div class="item item2">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>      <div class="item item3">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>      <div class="item item4">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>      <div class="item item5">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>      <div class="item item6">        <div class="content">          <div class="name">Lorem Ipsum</div>          <div class="des">Lorem ipsum dolor sit amet consectetur adipisicing elit.</div>          <button>See more</button>        </div>      </div>    </div>    <!-- 按钮 -->    <div class="btns">      <div class="s-btn left"><</div>      <div class="s-btn right">></div>    </div>  </div>
  <script src="./index.js"></script></body>
</html>
CSS
* {    margin0;    padding0;    box-sizing: border-box;}:root {    background-color#150c1a;    overflow: hidden;}.container {    width1100px;    height700px;    position: absolute;    top50%;    left50%;    transformtranslate(-50%, -50%);    padding50px;    filterdrop-shadow(0 0 10px #dbdbdb);}.slide {    /* 设置内容最大宽度 */    width: max-content;    display: flex;}.item {    background-repeat: no-repeat;    width200px;    height300px;    background-position: center;    background-size: cover;    position: absolute;    top50%;    /* 位移过渡导致动画卡顿 */    /* transform: translateY(-50%); */    /* 更换为 */    margin-top: -150px;    border-radius20px;    transition0.5s;}.item:nth-child(1),.item:nth-child(2) {    top0;    left0;    width100%;    height100%;    margin-top0;    /* 覆盖上述y轴平移 */    /* transform: translateY(0); */    border-radius4px;    box-shadow: none;}.item:nth-child(3) {    left50%;}.item:nth-child(4) {    leftcalc(50% + 220px);}.item:nth-child(5) {    leftcalc(50% + 440px);}/* n为自然数 初值为0 依次+1递增 */.item:nth-child(n + 6) {    opacity0;    leftcalc(50% + 660px);}.item .content {    position: absolute;    width300px;    left100px;    top50%;    transformtranslateY(-50%);    color#eee;    display: none;}.item:nth-child(2.content {    display: block;}.item .name {    font-size40px;    font-weight900;    opacity0;    /* 动画名 执行时间 动画曲线 执行1次 保持最后执行的状态 */    animation: show 1s ease-in-out 1 forwards;}.item .des {    margin20px 0;    opacity0;    /* 动画名 执行时间 动画曲线 延时 执行1次 保持最后执行的状态 */    animation: show 1s ease-in-out 0.3s 1 forwards;}.item button {    padding10px 20px;    border: none;    opacity0;    animation: show 1s ease-in-out 0.6s 1 forwards;}.btns {    width100%;    position: absolute;    bottom50px;    margin-left: -50px;    display: flex;    justify-content: center;}.s-btn {    width50px;    height50px;    line-height50px;    text-align: center;    color: gray;    background-color#fff;    font-size25px;    border-radius50%;    margin0 25px;    cursor: pointer;    font-weight900;    border1px solid #555;    transition0.5s;}.s-btn:hover {    background-color#ccc;}.item1 {    background-imageurl('./images/1.jpg');}.item2 {    background-imageurl('./images/2.jpg');}.item3 {    background-imageurl('./images/3.jpg');}.item4 {    background-imageurl('./images/4.jpg');}.item5 {    background-imageurl('./images/5.jpg');}.item6 {    background-imageurl('./images/6.jpg');}@keyframes show {    from {        opacity0;        transformtranslateY(100px);        filterblur(10px);    }    to {        opacity1;        transformtranslateY(0);        filterblur(0);    }}
JS
// 获取domconst left = document.querySelector('.left')const right = document.querySelector('.right')const slide = document.querySelector('.slide')right.addEventListener('click'function () {    // 每次更改后需要重新获取图片数组    const items = document.querySelectorAll('.item')    // 将第一位dom元素放置最后    slide.appendChild(items[0])})left.addEventListener('click'function () {    // 每次更改后需要重新获取图片数组    const items = document.querySelectorAll('.item')    // 将最后一位元素放置最前    slide.prepend(items[items.length - 1])})


该文章在 2026/2/12 11:00:43 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved