javascript 另一种图片滚动切换效果思路


Posted in Javascript onApril 20, 2012

先说一种最普遍的思路:

把图片们用ul之类的包起来,并设置float。然后设置这个ul本身为absolute定位,其父标签用relative定位。通过设置ul的left或top值,实现图片队列的滚动效果

特点:

只操作一个html元素(即上文的ul),对系统开销小;滚到头会回滚;从大序号滚动到小序号也会回滚;从最后序号滚动到第一个,会“咻”的一下把所有中间的图片也路过一次。

另一种思路就是我在XScroll.js里实现的思路,所有图片用绝对定位。具体看那篇文章吧。

XScroll.js完成后,我始终觉得他的系统消耗是个问题,因为他实现一个图片切换基本上都是同时操作两张图片。所以我想写一个精简版的,但又不想要我文首说那种最普通的。

后来我无意在土豆女性频道发现了另一种图片滚动切换的实现思路。

他的特点是:

无论从哪个序号跳到哪个序号,都只滚动一个步长。比如从1到2,或从1跳到到3,都只滚动一个步长。即使中间有其他图片,也不会出现;当然,滚到头也会回滚,但回滚也是只有一个步长。

这个效果看起来很奇妙,我研究了一下他的html,发现实现方式比我的XScroll.js要简便的多。

<ul id="idSlider2"> 
<li style=""><a href="http://office.3water.com/"><img src="../s1.jpg"/></a></li> 
<li><a href="http://3water.com/"><img src="../s2.jpg"/></a></li> 
<li><a href="http://baidu.com/"><img src="../s3.jpg"/></a></li> 
<li><a href="http://sc.3water.com/"><img src="../s4.jpg"/></a></li> 
</ul>

html结构,很普通;前面的定位跟最普遍的那个思路一样,都是所有图片均设置float:left。但JS里面有蹊跷:只设置当前图片为显示,其余图片隐藏,当要滚动时,显示出下一张图片,并判断下一张图片是在当前图片前面还是后面:在后面就往左滚,在前面就回滚。

由于所有图片都设置了float,所以当任意两张图片显示出来的时候,他们会因为float的原因紧紧靠在一起,这样,就不用额外担心图片的定位问题了。

而且,这样一来,也只用操作图片容器(即那个ul),而不用操作单张图片,节省系统资源。

我觉得这种思路很妙,简单大气又节约,所以我写了一个XScroll2.js,来记录这个效果,感觉还很不错哈。

有兴趣的朋友可以看XScroll2.js的示例页,仿的是拍拍网首页的图片切换——因为他的效果也是上面说的这种。不过不知道能坚持看到文末的同学有多少呢。。。

Javascript 相关文章推荐
网页中实现浏览器的最大,最小化和关闭按钮
Mar 12 Javascript
jquery ready函数源代码研究
Dec 06 Javascript
jquery构造器的实现代码小结
May 16 Javascript
利用jQuary实现文字浮动提示效果示例代码
Dec 26 Javascript
Jquery 实现checkbox全选方法
Jan 28 Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 Javascript
jquery实现多屏多图焦点图切换特效的方法
May 04 Javascript
JS实现的几个常用算法
Nov 12 Javascript
微信JS SDK接入的几点注意事项(必看篇)
Jun 23 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
使用JavaScript实现在页面中显示距离2017年中秋节的天数
Sep 26 Javascript
jQuery简单实现根据日期计算星期几的方法
Jan 09 jQuery
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
Apr 20 #Javascript
浏览器解析js生成的html出现样式问题的解决方法
Apr 16 #Javascript
基于jquery的不规则矩形的排列实现代码
Apr 16 #Javascript
JavaScript打开word文档的实现代码(c#)
Apr 16 #Javascript
jQuery UI Autocomplete 1.8.16 中文输入修正代码
Apr 16 #Javascript
Moment.js 不容错过的超棒Javascript日期处理类库
Apr 15 #Javascript
5个最佳的Javascript日期处理类库分享
Apr 15 #Javascript
You might like
PHP防止注入攻击实例分析
2014/11/03 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
php实现商城购物车的思路和源码分析
2020/07/23 PHP
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
2013/10/11 Javascript
JavaScript的继承的封装介绍
2013/10/15 Javascript
jQuery插件分享之分页插件jqPagination
2014/06/06 Javascript
AngularJS实现表单验证功能
2017/01/09 Javascript
利用Angular.js编写公共提示模块的方法教程
2017/05/28 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
微信小程序开发之左右分栏效果的实例代码
2019/05/20 Javascript
详解基于 Node.js 的轻量级云函数功能实现
2019/07/08 Javascript
python递归计算N!的方法
2015/05/05 Python
Scrapy-redis爬虫分布式爬取的分析和实现
2017/02/07 Python
python3使用matplotlib绘制散点图
2019/03/19 Python
python中while和for的区别总结
2019/06/28 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
2020/01/15 Python
python爬虫请求头设置代码
2020/07/28 Python
python实现图片素描效果
2020/09/26 Python
Python中pass语句的作用是什么
2016/06/01 面试题
传播学毕业生求职信
2013/10/11 职场文书
毕业论文评语大全
2014/04/29 职场文书
促销活动计划书
2014/05/02 职场文书
应届生求职信
2014/05/31 职场文书
商场租赁意向书
2014/07/30 职场文书
2014和解协议书范文
2014/09/15 职场文书
单位法定代表人授权委托书
2014/09/20 职场文书
农村文化建设标语
2014/10/07 职场文书
学校师德师风整改方案
2014/10/28 职场文书
2014年财务科工作总结
2014/11/11 职场文书
干部个人考察材料
2014/12/24 职场文书
中学生学习保证书
2015/02/26 职场文书
2015年社会治安综合治理工作总结
2015/04/10 职场文书
学校捐书活动总结
2015/05/08 职场文书
红楼梦读书笔记
2015/06/25 职场文书
MongoDB误操作后使用oplog恢复数据
2022/04/11 MongoDB