【案例】图片无缝轮播效果

知识点:

1、scrollLeft属性

2、克隆节点

3、定时器

4、鼠标移入移除事件

 

<!DOCTYPE html>

<html lang="en">

<head>

        <meta charset="UTF-8">

        <title>无缝轮播</title>

        <style>

                 *{

                         margin: 0;

                         padding: 0;

                 }

                 body{

                         background:#000;

                 }

                 li{

                         list-style: none;

                 }

                 #show{

                         width: 940px;

                         height: 450px;

                         margin: 0 auto;

                         margin-top: 60px;

                         /* overflow-x: scroll; */

                         overflow: hidden;

                 }

                 #show #wrap{

                         width: 7520px;

                         height: 450px;

                 }

                 #show #wrap ul{

                         width: 3760px;

                         height: 450px;

                         float: left;

                 }

                 #show #wrap ul>li{

                         float: left;

                 }

        </style>

</head>

<body>

        <div id="show">     

                 <div id="wrap">

                         <ul>

                                  <li><img src="./images/a.jpg" alt=""></li>

                                  <li><img src="./images/c.jpg" alt=""></li>

                                  <li><img src="./images/b.jpg" alt=""></li>

                                  <li><img src="./images/d.jpg" alt=""></li>

                         </ul>

                         <!-- <ul>

                                  <li><img src="./images/a.jpg" alt=""></li>

                                  <li><img src="./images/c.jpg" alt=""></li>

                                  <li><img src="./images/b.jpg" alt=""></li>

                                  <li><img src="./images/d.jpg" alt=""></li>

                         </ul> -->

                 </div>

        </div>

</body>

<script>

        var show = document.getElementById('show');

        var ul = document.querySelector('ul');

        var wrap = document.getElementById('wrap');

        var ulWidth = ul.offsetWidth;

        console.log(ulWidth);

 

        //克隆ul并追加到wrap

        wrap.appendChild(ul.cloneNode(true));

        //设置无缝轮播的步径

        var step = 1;

        //设置轮播标志

        var run;

        //将无缝轮播封装为一个函数

        function autoRun(){

                 run = setInterval(function(){

                                  var newScroolLeft = show.scrollLeft + step;

                                  if(newScroolLeft >= ulWidth){

                                          newScroolLeft = 0;

                                  }

                                  show.scrollLeft = newScroolLeft + step;

                         },20);

        }

        //设置页面进入初始化

        autoRun();

        //鼠标移入停止轮播

        show.onmouseenter = function(){

                 clearInterval(run);

        }

        //鼠标离开继续轮播

        show.onmouseleave = function(){

                 autoRun();

        }

</script>

</html>

转载于:https://www.cnblogs.com/sherryStudy/p/wufneg_lunbo.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/448856.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯CKV海量分布式存储系统

摘要&#xff1a;腾讯CKV&#xff0c;是腾讯自主研发的高性能、低延时、持久化、分布式KV存储服务。在腾讯的微信平台、开放平台、腾讯云、腾讯游戏和电商平台广泛使用&#xff0c;日访问量超过万亿次。本文将全面剖析CKV的实现原理和技术挑战。 与Memcached和Redis等开源NoSQ…

Apache RocketMQ 安装、测试、报错解决

1. 准备 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 64bit OS, Linux/Unix/Mac 64bit JDK 1.8; Maven 3.2.x 2.下载和构建 下载 4.2.0 源代码版本地址&#xff1a;http://mirro…

编程之法:面试和算法心得

《编程之法&#xff1a;面试和算法心得》高清中文版PDF 含书目录 下载地址&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1Kcd2bRsIfhagKZR6NaOgXg 提取码&#xff1a;054s 《编程之法&#xff1a;面试和算法心得》高清中文版PDF高清中文版PDF 含书目录&#xff0c;36…

localStorage存、取数组

localStorage存储数组时需要先使用JSON.stringify()转成字符串&#xff0c;取的时候再字符串转数组JSON.parse()。 var arr[1,2,3,4];localStorage.setItem(key,arr);console.log(localStorage(key); //打印出字符串&#xff1a;1,2,3,4 正常存储&#xff1a;localStorage.setI…

10岁起编程,并不认为自己是“黑客”

摘要&#xff1a;一直以来&#xff0c;女性在“黑客”群体中缺乏代表性&#xff0c;但这不是因为她们缺乏兴趣。麻省理工学院的Liz Denys从十岁开始接触编程&#xff0c;但由于被忽视以及性别歧视问题&#xff0c;她和许多女性一样&#xff0c;游走在“黑客”圈子之外。 我10岁…

Redis原理及拓展

Redis是单线程程序。单线程的Redis为何还能这么快&#xff1f; 1、所有的数据都在内存中&#xff0c;所有的运算都是内存级别的运算&#xff08;因此时间复杂度为O(n)的指令要谨慎使用&#xff09; 2、单线程操作&#xff0c;避免了频繁的上下文切换 3、多路复用&#xff08;非…

日常问题 - 远程服务器运行Tomcat出现卡顿阻塞

问题描述&#xff1a; 远程服务器Tomcat容器运行一个WEB项目&#xff0c;浏览器访问时&#xff0c;请求一直得不到响应&#xff0c;并且除此之外没有出现任何异常&#xff0c;像是被阻塞了。查看远程Tomcat窗口&#xff0c;也没有任何报错。鼠标在Tomcat窗口右键点击后&#xf…

linux : ulimit 命令使用说明、参数解说

ulimit -a 用来显示当前的各种用户进程限制 Linux 对于每个用户&#xff0c;系统限制其最大进程数&#xff0c;为提高性能&#xff0c;可以根据设备资源情况&#xff0c; 设置个Linux用户的最大进程数&#xff0c;一些需要设置为无限制&#xff1a; 数据段长度&#xff1a;uli…

给技术人上的管理课:平衡和集中

摘要&#xff1a;大中型团队管理是技术人转型的巨大挑战&#xff0c;这个阶段的管理工作&#xff0c;仍然可以归为技术范畴&#xff0c;依靠的大抵是管理人的筋肉力量。是否会管理&#xff0c;要看能否管好超出自己筋肉力量规模的团队。此中的关键&#xff0c;在于把握平衡和集…

理解分布式id生成算法--雪花算法(SnowFlake)

分布式ID生成算法的有很多种&#xff0c;Twitter的SnowFlake就是其中经典的一种。 注&#xff1a; 1B就是1个字节。Byte、KB、B、MB、GB之间的关系是&#xff1a;Bit——比特 &#xff1b; B ——字节&#xff1b;KB——千字节&#xff1b;MB——兆字节&#xff1b;GB——吉字节…

[ZJOI2010]贪吃的老鼠

P2570 [ZJOI2010]贪吃的老鼠 在Ta的博客查看 显然二分&#xff0c;最大流判定 要满足两个条件&#xff1a; (1) 在任一时刻&#xff0c;一只老鼠最多可以吃一块奶酪&#xff1b; (2) 在任一时刻&#xff0c;一块奶酪最多被一只老鼠吃。 先按照奶酪的边界进行离散化&#xff0c…

IP: 169.254.0.0/16 地址用途

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 一直困惑169.254.0.0/16是干嘛的&#xff0c;每次笔记本dhcp获取地址失败后&#xff0c;就会随机在这个B类地址段获取一个地址&#…

值得借鉴的30条好习惯

我有幸一直能生活在比较好的圈子中&#xff0c;我的优秀的同学、舍友&#xff0c;乃至我现在创业后遇到的优秀创业者&#xff0c;从他们身上看到和学到一些好的习惯。 我一直觉得&#xff0c;好的习惯&#xff0c;是成功和进步的重要一点。我随手总结一些给大家&#xff0c;零散…

【PKUSC2019】线弦图【计数】【树形DP】【分治FFT】

Description 定义线图为把无向图的边变成点&#xff0c;新图中点与点之间右边当且仅当它们对应的边在原图中有公共点&#xff0c;这样得到的图。 定义弦图为不存在一个长度大于3的纯环&#xff0c;纯环的定义是在环上任取两个不相邻的点&#xff0c;它们之间都没有边&#xff0…

注解 @PostConstruct 与 @PreDestroy 详解及实例

简介 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 Java EE5 引入了PostConstruct和PreDestroy这两个作用于Servlet生命周期的注解&#xff0c;实现Bean初始化之前和销毁之前的自定义操…

别让6种不良心理偷走你的好人缘

众所周知&#xff0c;拥有正常、健康的交际圈对于人的身心健康都是很有帮助的。但是若想维系好自己的交际圈&#xff0c;也是很不容易的&#xff0c;甚至在不经意间产生的某些心理&#xff0c;就会直接给大家的人际交往带来影响。那么接下来&#xff0c;小编就先为大家归纳一下…

PHP 安装xdebug

xdebug官网: https://xdebug.org 安装步骤如下: 使用 phpinfo() 打印出PHP相关信息, 全选, 复制 打开 xdebug 网站: https://xdebug.org/wizard.php 在图中输入框中粘贴你复制的信息, 点击 Analyse my phpinfo() output 在结果中点击下载, 然后按照它提示的步骤进行操作即可…

apt-clone:备份已安装的软件包并在新的 Ubuntu 系统上恢复它们

当我们在基于 Ubuntu/Debian 的系统上使用 apt-clone&#xff0c;包安装会变得更加容易。如果你需要在少量系统上安装相同的软件包时&#xff0c;apt-clone 会适合你。 如果你想在每个系统上手动构建和安装必要的软件包&#xff0c;这是一个耗时的过程。它可以通过多种方式实现…

分布式消息中间件 : Rocketmq

简述 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 分布式消息中间件&#xff0c;主要是实现分布式系统中解耦、异步消息、流量销锋、日志处理等场景。生产中用的最多的消息队…

PV、UV、UIP、VV、CPC、CPM、RPM、CTR指的是什么?

PV(PageView)&#xff1a;网站浏览量&#xff0c;指页面的浏览次数&#xff0c;用以衡量网站用户访问的网页数量。用户没打开一个页面便记录1次PV&#xff0c;多次打开同一页面则浏览量累计&#xff1b;UV(UniqueVistor)&#xff1a;独立访客数&#xff0c;指1天内访问某站点的…