轮播图--JS手写

轮播图基本每个网站都会有,也有很多的JQuery插件可以用,这里是用JS代码写的。

案例:http://www.shopli.cn   首页三张图片的轮换就是这种写法

@{Layout = null;
}<!DOCTYPE html><html>
<head><meta name="viewport" content="width=device-width" /><title>Test</title><script src="~/Scripts/jquery-1.8.2.min.js"></script>@*Css样式*@<style>* {margin: 0;padding: 0;}ul {height: 600px;position: relative;}ul li {float: left;list-style-type: none;height: 100%;background-position: 50% 50%; background-size: cover;}.one { background-image: url("/Content/1.jpg");}.two { background-image: url("/Content/2.jpg");}.three { background-image: url("/Content/3.jpg");}.four {background-image: url("/Content/4.png");}.dw {position: absolute;bottom: 5px;width: 100%;text-align: center;}ol {list-style: none;text-align: center;}ol li {display: inline-block;width: 22px;height: 4px;padding: 4px;overflow: hidden;text-indent: -999em;cursor: pointer;background-color: white;}.hasClass {background-color: red;}</style></head>
<body><div style="position: relative; overflow: hidden; height: 600px;">@*有多少个li,ul的宽度就是 X00%*@ <ul style="width:600%; margin-left:-100%;">    @*第一张前面放最后一张,做轮播给人一种一直往一个方向的感觉*@
        当显示这张图片时,ul就改变样式定位到第4张图片
<li class="four" style="width:16.6667%"></li> @*这里的li标签宽度是16.66667%怎么来的, 只有4张图片做轮播,前后各加一张就是6张, 16.666667=100/6 如果是2张做轮播,一共4个li, 每个li的宽度就是25%*@ @*这4张图片做轮播*@<li class="one" style="width:16.6667%"></li><li class="two" style="width:16.6667%"></li><li class="three" style="width:16.6667%"></li><li class="four" style="width:16.6667%"></li>@*最后一张后面放第一张,做轮播给人一种一直往一个方向的感觉*@
当显示这张图片时,ul改变样式定位到第1张图片
<li class="one" style="width:16.6667%"></li></ul><nav class="dw"><ol ><li data-slide="0" class="hasClass"></li><li data-slide="1" class=""></li><li data-slide="2" class=""></li><li data-slide="3" class=""></li></ol></nav></div> </body> </html> <script>var mm;function hh() {//ul li做向左移动$("ul").animate({ "left": "+=" + "-100%" }, 1200, function () {var i;//得到第几张的值$("ol li").each(function () {if ($(this).attr("class") != "") {i = $(this).attr("data-slide");}});//因为是做过一次动画才来找值,所有当i为3时,ul是的left是 -400%,也就是第5张图片i = parseInt(i) + 1;//如果等于4 就重置下, 这里有4张做轮播就是4if (parseInt(i) == 4) {i = 0;$("ul").css("left", "0%"); //重新定位下,ul的left已经重置了,因为图片没变,所以给人一个方向的假象 }$("ol li").attr("class", ""); //把所有的li的样式移除$("ol li:eq(" + parseInt(i) + ")").attr("class", "hasClass"); //下面的图标显示 })mm = setTimeout("hh()", 4000); //每个4秒做一次动画 }$(document).ready(function () {mm = setTimeout("hh()", 4000);//点第几张就显示几张 左右也是一回事,这里没写$("ol").on("click", "li", function () {var jj = $(this).attr("data-slide"); //点的第几张$("ol li").attr("class", "");$("ol li:eq(" + parseInt(jj) + ")").attr("class", "hasClass"); //下面的图标显示 clearTimeout(mm);$("ul").animate({ "left": "-" + parseInt(jj) + "00%" }, 1200, function () {mm = setTimeout("hh()", 4000);}); //重新定位下 })})</script>

 

转载于:https://www.cnblogs.com/Sea1ee/p/6266987.html

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

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

相关文章

物联网趋势下的边缘计算发展解析

来源&#xff1a;《NXP客栈》家居或商业应用&#xff0c;到互联车辆&#xff0c;边缘计算贯穿整个物联网。随着数据量的增加&#xff0c;这种计算需要具有最优网络安全功能与最高功能安全级别的强大互联边缘计算平台。创新通常成波出现&#xff08;图1&#xff09;。一些创新浪…

docker php 一键部署_Java开发提升十倍生产力:Idea远程一键部署springboot到Docker

IDEA是Java开发利器&#xff0c;springboot是Java生态中最流行的微服务框架&#xff0c;docker是时下最火的容器技术&#xff0c;那么它们结合在一起会产生什么化学反应呢&#xff1f;一、开发前准备1.Docker安装可以参考&#xff1a;https://docs.docker.com/install/2.配置do…

四个人过桥的题目_云南的几种“勾魂”特产,舌尖上的美味,让人回味无穷,你吃过吗...

云南&#xff0c;彩云之南&#xff0c;说到云南美食&#xff0c;大家可能第一反应都是“米线呀&#xff01;”害&#xff01;大云南的美食可多了&#xff0c;你可不能只知道这一个&#xff0c;号称花城的云南&#xff0c;这里的美食也是“遍地开花”。过桥米线一碗过桥米线&…

逐!帧!揭!秘!终于能看清波士顿动力机器人的细节了

来源&#xff1a;乾明&#xff1b;发自 凹非寺&#xff1b;量子位报道波士顿动力&#xff0c;逆天机器人的代名词。每一次新的视频放出&#xff0c;机器人做出各种充满视觉冲击力动作&#xff0c;都会引起疯狂传播。凭借敏捷的身姿和动物般的反应能力&#xff0c;它们做出了各种…

五大原则让你的代码不再受bug的困扰

牢记以下五项基本原则&#xff0c;能够帮助大家尽可能减少代码中的bug。  Java编程语言的人气自然无需质疑&#xff0c;从Web应用到Android应用&#xff0c;这款语言已经被广泛用于开发各类应用及代码中的复杂功能。  不过在编写代码时&#xff0c;bug永远是困扰每一位从业…

数学建模matlab画图操作大全

数学建模matlab画图操作大全 1.画图及一些基本设置 clear%清空工作区 clc%清空命令行窗口 close all%关闭所有图窗 x-40:0.1:40 f(x) x.^2-110;%函数句柄 x0fzero(f,15)%找15附近的零点 x0fminsearch(f,-11)%找-11附近的最小值%% 画图及其基本操作 %画图&#xff0c;默认格式…

oracle wd2go 转_WD2go的作用是()。

WD2go的作用是()。更多相关问题[单选] 电瓶有两级&#xff0c;分别用“”、“—”表示&#xff0c;“”代表()级。[问答题,简答题] 电容器的可分为哪几类&#xff1f;有哪些选用原则&#xff1f;[问答题,简答题] 295B、WK—4、WK—10电铲回转托辊数目&#xff1f;结构不同&…

python语言的产生_Python生成器是什么(超级详细)

之前我们讨论了高效的推导式。通过推导式&#xff0c;我们可以直接创建一个列表、字典或集合。但是&#xff0c;由于受到内存的限制&#xff0c;这些可迭代对象&#xff08;列表、字典或集合&#xff09;的容量是有限的。 比如&#xff0c;创建一个包含 10 万个元素的列表&…

俄罗斯“木船”机器人系统将于2020年部署部队

来源&#xff1a;国防科技要闻据悉&#xff0c;俄罗斯地面部队已完成“木船”&#xff08;Kungas&#xff09;机器人系统样机的国家试验&#xff0c;将于2020年开始部署部队&#xff0c;用于作战试验。发展背景自2010年以来&#xff0c;俄罗斯机器人系统进入快速发展时期。2014…

Oracle优化笔记

2016-11-22子查询&#xff1a;标量子查询 内联视图&#xff08;in-line view&#xff09; 半连接/反连接标量子查询 select 后跟子查询 类似自定义函数 可用开窗函数之类的改写内联视图&#xff08;in-line view&#xff09; from 后跟子查询 类似设计View 子查询套子查询是垃圾…

线程停止继续_晓龙吊打面试官系列: 如何优雅的停止一个线程

一、什么时候我们需要中断一个线程在实际的开发中&#xff0c;有很多场景需要我们中断一个正在运行的线程&#xff0c;就比如&#xff1a;当我们使用抢票软件时&#xff0c;其中某一个通道已经抢到了火车票&#xff0c;这个时候我们就需要通知其他线程停止工作。当我们希望在一…

数模写作必备利器—latex

数模写作技巧——用latex排版写作 视频地址在我自己的b站 https://www.bilibili.com/video/BV1Pp4y1e7fU/ 数模写作培训

hive读取hdfs存放文件_数据获取层之Flume快速入门(一) 实时监控单个追加文件

实时监控 Hive 日志&#xff0c;并上传到 HDFS 中实现步骤1、Flume 要想将数据输出到 HDFS&#xff0c;必须持有 Hadoop 相关 jar 包commons-configuration-1.6.jar、hadoop-auth-2.7.2.jar、hadoop-common-2.7.2.jar、hadoop-hdfs-2.7.2.jar、commons-io-2.4.jar、htrace-core…

2019-2020中国趋势报告,203页PPT解读16大机会

来源&#xff1a;企鹅智库 报告如下未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评测体系&#xff0c;开展世界人工智能智商评测&#xff1b;开展互联…

242.判断一个字符串是否为另一个的乱序 Valid Anagram

错误1"aa""bb"static public bool IsAnagram(string s, string t) { int sLength s.Length; int tLength t.Length; if (sLength ! tLength) { return false; } char c ; int value 0; Dictionary<char, int> d new Dictionary<char, int&g…

行程单图片python预处理_GCC编译过程(预处理-gt;编译-gt;汇编-gt;链接)

前言如果你使用集成环境开发。那么你点击编译按钮就可生成可执行文件。但是C程序从源代码到二进制行程序都经历了那些过程&#xff1f;你知道吗&#xff1f;这些过程集成开发环境在点击编译按钮后都做完了&#xff0c;如果编译没有出错&#xff0c;即可生成可执行文件。本文将以…

树莓派装系统,配置,换源,远程操控

一、树莓派装系统&#xff0c;配置&#xff0c;换源&#xff0c;远程操控 1.装系统 省略 2.各种协议的使能&#xff0c;配置 参考树莓派教程文档 3.换源 3.1系统更新源的更换 sudo nano /etc/apt/sources.list #注释掉原始国外源&#xff0c;即原始文件第一行的代码 #添加…

sqlite查询乘以某列如果是null就换成_大数据之Hive group by with cube/rollup分组查询...

group bysql 查询时&#xff0c;我们常将聚合函数和group by 结合起来对某一个或多个字段进行分组查询&#xff0c;例如&#xff1a;select addcode,count(distinct sbtid)uv from tb_hive_window group by addcode;---------------| addcode | uv |---------------| 0002 …

Windows下MYSQL的安装与配置

配置&#xff1a; 1. 安装MySQL服务 cmd(管理员模式)下切换到MySQL的bin目录&#xff0c;运行 mysqld install 2. 输入 net start mysql 启动服务 3. 输入 mysql -uroot -p 进入&#xff0c;默认无密码 4. 设置密码 mysqladmin -uroot -p 新密码 &#xff08;会提示输入密码&am…

可以操作excel吗_Excel快速填充,这四种方法你会吗?操作逆天告别加班

在Excel的表格制作中&#xff0c;仅仅会复制粘贴可是不够的&#xff0c;还需要掌握更多的技能&#xff0c;来提升我们的工作效率&#xff01;我们在进行Excel报表制作的时候&#xff0c;如果要批量填充序号&#xff0c;有多少种方法呢&#xff1f;下面给大家简单介绍一下这四种…