博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
无限轮播图的制作
阅读量:5099 次
发布时间:2019-06-13

本文共 1008 字,大约阅读时间需要 3 分钟。

url:
(如果打开过慢,或者打不开,原因你懂得。)
一、思路
1、所有滑动效果的demo都是通过控制css里的left值,来控制滑动效果的。
2、需要两个块,一个div块,一个ui。div块的position是relative,ui块的position是absolute。这样ui块的left就可以根据外层的div来控制。div的overflow是hidden,因为ui里面的li的float是left的,ui的宽度必定比div宽,但是要保证只显示一张图,所以超出div的部分隐藏掉。
3、两个按钮,这两个按钮,无非就是控制UI的left值变化,以每一张图的宽度为限,进行加或减的运算。
4、所谓无限轮播,只是在不停点击按钮的时候,图片会一直向左,或者向右转动,而不是像某些轮转图,当到达零界点时,发生跳转。这个时候,我们就要复制第一张图,把第一张插入整个ui的最后,把最后一张图,复制插入整个ui的首位。当点击到我们复制的图片时,就直接定位到,最后一张图,或者第一张图。这种快速的定位,不会有任何间隙的产生。
5、自动播放,也就是当页面载入的时候,设定一个定时器,让这个定时器,调用自身。定时器的fn无法就是点击按钮,让图片自己转动起来。
6、当鼠标移入时,停止定时器,当鼠标移出的时候,启动定时器。
7、当点击按钮的时候,判断当前是否处于动画状态,处于动画状态,就移除对left的控制,不处于动画状态,就执行对left的控制,这个主要是考虑到,当用户不停地点击按钮时,图片会不停的轮转,点击了多少次,就执行多少次点击函数。这是一种不好的用户体验。
二、代码
具体效果代码。可以点击上面的url,查看推敲,我是用avalon和jquery结合做的。
三、总结
1、基本上所有的动画效果,都是通过控制css属性来实现的,不管是渐变、滑动、切换、弹出、消失、隐藏。js只是实现一个控制的功能。
2、对于组件使用的看法,js的ui组件很多,我的看法是,项目中有自信的可以自己做,没自信的就用,比较一个好的ui库是比自己写的完善很多的,项目不是让自己练手的东西。自己的小demo,可以用js原生来写,用jq来写,都随意,这是体现自己实力的东西。
<--待完善-->
突然发现一些小BUG,基本想法就是这样,待我填坑。

转载于:https://www.cnblogs.com/Zjingwen/p/4526566.html

你可能感兴趣的文章
uboot分析:uboot的启动过程分析
查看>>
tmux的简单快捷键
查看>>
springboot笔记04——读取配置文件+使用slf4j日志
查看>>
[Swift]LeetCode653. 两数之和 IV - 输入 BST | Two Sum IV - Input is a BST
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
微信小程序的wxml文件和wxss文件在webstrom的支持
查看>>
Html5 离线页面缓存
查看>>
[php]在PHP中读取和写入WORD文档的代码
查看>>
WCF傻瓜模式写程序
查看>>
《绿色·精简·性感·迷你版》易语言,小到不可想象
查看>>
Java Web学习总结(13)Listener监听器
查看>>
开始Flask项目
查看>>
Ruby:多线程队列(Queue)下载博客文章到本地
查看>>
Android打包key密码丢失找回
查看>>
03 jQuery动画
查看>>
医药箱APP静态小项目
查看>>
安装使用eclipse
查看>>
VC6.0调试技巧(一)(转)
查看>>
linux命令
查看>>
类库与框架,强类型与弱类型的闲聊
查看>>