前端轮播图最简单实现(小白也能学会)

这篇具有很好参考价值的文章主要介绍了前端轮播图最简单实现(小白也能学会)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

轮播图大家肯定都不陌生,因为这是前端最为常见的一个功能,现在随着框架和一些插件的兴起,很少人会去原生的去写轮播图,所以今天带大家写一下原生的轮播图来熟悉一下

csdn 轮播图,前端,javascript,开发语言,html

最为主要的就是得知道这张图片的宽度,因为每一次移动的距离就是这张图片的宽度,但是宽度我们不能给死,每一张图片的大小是不一样的,所以根据js的clientWidth来获取,这样不管图片是多大都能获得这张图片的大小,第一步的移动距离就完成了,核心部分也就完成了

        然后就是选择的定时器,这里一定要用setInterval这个定时器,不能用setTimeout,主要原因就不细说了,大家应该是都很熟悉的。

        最后就是轮播到最后一张图片的时候该如何回到第一张图片呢?这里是直接不带动画的跳转到第一张(一会在代码中体现出来)

        下面就来看一下代码的实现过程:

首先是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>Document</title>
    <link rel="stylesheet" href="轮播图.css">
    <script src="轮播图.js"></script>
</head>
<body>
    <footer class="slideshow">
        <ul>
            <li><a href="#"><img src="image/2.jpg" alt=""></a></li>
            <li><a href="#"><img src="image/门.jpg" alt=""></a></li>
            <li><a href="#"><img src="image/灵压之旅.jpg" alt=""></a></li>
            <li><a href="#"><img src="image/2.png" alt=""></a></li>
            <li><a href="#"><img src="image/2.jpg" alt=""></a></li>
        </ul>
    </footer>
</body>
</html>

接下来就是css的样式,大家根据自己的喜好设置即可:

*{
    margin: 0;
    padding: 0;
}
ul li {
    list-style: none;
}
.slideshow{
    position: relative;
    width: 1400px;
    height: 600px;
    margin: 0 auto;
    overflow: hidden;
}
.slideshow ul{
    width: 600%;
    position: absolute;
    height: 600px;
    left: 0;
    top: 0;
    /* transition: all 0s; */
}
.slideshow ul li{
    float: left;
    width: 1400px;
    height: 600px;
}
.slideshow ul li a img{
    width: 1400px;
    height: 600px;
}

 最后就是核心部分的js:

window.addEventListener("load", function () {
    var a = document.querySelector(".slideshow ul");
    // a.style.left="-1400px"
    // console.dir(a.children[0])
    console.log(a.children.length);
    var num = 0;
    var len = a.children[0].clientWidth;
    console.log(a.children[0].clientWidth);
     setInterval(function(){
        if(num==a.children.length){
            a.style.left="0px";
            a.style.transition="left 0s";
            num = 1;
        }else{
            a.style.left=-len*num+"px";
            a.style.transition="left 1s";
            num++;
        } 
      
    },1500);
})

希望大家学到东西文章来源地址https://www.toymoban.com/news/detail-756183.html

到了这里,关于前端轮播图最简单实现(小白也能学会)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 原生 JS 实现一个简单轮播图

    在动手实现轮播图之前,我们先来明确一下要实现的效果。 默认自动轮播,每隔4秒切换一张图片 鼠标点击任一个小圆点即可切换到对应的图片 鼠标移入轮播区域时,两侧出现切换图片的按钮,点击按钮分别切换到上(下)一张图片 因此,轮播图可以分为三个主要部分,首

    2024年02月09日
    浏览(63)
  • JS实现轮播图的三种简单方法。

    实现思路 这可能是轮播图最简单点的实现之一,通过更改图片的src来实现该效果,首先需要将图片命名格式统一比如pic01.jpg,pic02.jpg…,再通过js使用定时器去改变img标签里面的src图片链接的名字来实现切换效果。代码如下: 实现效果 实现思路 这可能是轮播图最简单点的实现

    2024年02月03日
    浏览(49)
  • 轮播图,用vue来写一个简单的轮播图

    写的很简单,就是一个小练习,哈哈哈,下面的几张图分别是轮播图的第一张,中间图,最后一张的效果图。 使用了vue 中的属性绑定 v-bind ,v-show 以及 事件监听 v-on 指令。 思路: 1.vue实例中声明一个data属性imgArr,用于存放每张轮播图的地址, 2.同时定义一个默认起始索引in

    2024年02月16日
    浏览(42)
  • 前端项目-05-轮播图banner和Floor组件开发-全局轮播图组件抽取

    目录 1-轮播图模块数据开发 2-floor组件开发 3-抽取全局轮播图组件 轮播图需要用到swiper插件,先安装5.4.5版本的swiper: npm  install --save swiper@^5.4.5 --force 模拟从服务器获取数据; 1-编写mockRequests的js文件和之前编写的request的js文件类似,就修改一下baseURL,我们模拟的数据请求路

    2023年04月08日
    浏览(49)
  • 12-web前端轮播图案例 (小米商城)

    说明: 轮播图在前端开发中是一种常见的元素,通常用于展示一系列的图片或者内容,并通过滑动或者点击的方式进行切换。使用JavaScript来实现轮播图有以下几个意义: 提升用户体验:轮播图可以在有限的空间内展示更多的内容,为用户提供更多的信息。同时,轮播图也具

    2024年02月08日
    浏览(46)
  • 前端Vue自定义轮播图视频播放组件 仿京东商品详情轮播图视频Video播放效果 可图片预览

    随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。通过组件化开发,可以有效实现单独开发,单独维护,而且他们之间可以随

    2024年02月15日
    浏览(54)
  • 手机录屏怎么弄?方法来了,小白也能学会!

    在移动互联时代,手机不仅是通讯工具,更是记录生活、分享经验的得力工具。其中,手机录屏功能为用户提供了记录操作过程、分享游戏成果、制作教程等便捷途径。可是您手机录屏怎么弄吗?本文将介绍两种手机录屏的方法,帮助您轻松掌握手机录屏技巧。 手机录屏功能

    2024年02月02日
    浏览(49)
  • 如何设置SSH免密登录,只需两步(小白也能学会)

    SSH 免密登录可以让用户在不输入密码的情况下登录远程服务器,提高登录效率和安全性。以下是 SSH 免密登录的步骤: 生成公钥和私钥 在本地电脑上使用 ssh-keygen 命令生成公钥和私钥。默认情况下,这些文件将被保存在 ~/.ssh 目录下。 将公钥复制到远程服务器 使用 ssh-copy

    2024年02月11日
    浏览(47)
  • 小白也能学会的链表 | C++ | 算法与数据结构 (新手村)

    本质:找到两个有序数据段中的第一个相同数据 解题:利用set的不重复性,首先把headA都塞到set中,再遍历headB找有没有已经出现在set中的节点即可。 注意! set的数据是ListNode* 不是 int。如果是int可能出现节点不同但是var相同的情况,而ListNode* 就不会。 时间复杂度:O(2n)

    2024年02月14日
    浏览(56)
  • 前端效果积累 |别具一格的3D酷炫轮播图效果收集

    📌 个人主页 :个人主页 ​🧀 推荐专栏 :前端开发成神之路 --【 这是一个为想要 入门和进阶前端开发专门开启的精品专栏 !从 个人到商业的全套开发教程 ,实打实的干货分享,确定不来看看? 😻😻】 📝 作者简介 : 从web开发,再到大数据算法,踩过了无数的坑,用

    2024年02月16日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包