javascript实例学习之八——无缝切换效果
无缝切换在网站的很多地方都有涉及,比如轮播图等。
基本思路:
1)将可视窗当前的元素复制,依次添加为ul中的子元素
2)改变ul整体的left取值(负的窗口值),动画缓动至想要的位置
3)将原视窗(已被复制)的各个li删除
4)将ul的left取值重新调整为0
实现的html代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>测试页面</title> <style> *{margin:;padding: ;box-sizing:border-box;} div{width:480px;height:150px;border:5px solid #; margin-left:300px; position: relative;} ul{ overflow: hidden; position: absolute; left: ;} ul li{width:150px; height:150px; background:blue;float:left;margin-right:10px;list-style: none; color:white; font-size: 34px;text-align: center;} </style> </head> <body> <div id="div1"> <ul> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> </div> <button id="btn">切换</button> <script src="./commonJs/tool.js"></script> <script src="./commonJs/base.js"></script> <script src="./usualEffects/js/mySwitch.js"></script> </body> </html>
无缝切换html代码
js代码:
$(function() { ]; var aLis = document.getElementsByTagName('li'); ].offsetWidth + ; ; var showWidth = showNum * oneSize; var btn = document.getElementById('btn'); var flag = true; function setUlWidth() { var sumWidth = aLis.length * oneSize; console.log('sumWidth:' + sumWidth); oUl.style.width = sumWidth + 'px'; } setUlWidth(); btn.addEventListener('click', function() { //为了防止动画累加,设置flag参数,只有当上次动画结束之后,才可能开始下一次动画 if (flag) { flag=false; ; i < showNum; i++) { //将前面showNum个元素复制,粘贴到列表后面 var cloneNode = aLis[i].cloneNode(true); oUl.appendChild(cloneNode); setUlWidth(); } $(oUl).animate({ 'left': -showWidth + 'px' }, function() { //动画结束之后的回调 //删除添加的元素 ; k < showNum; k++) { ]); } //将ul的left值复原 ; flag=true; }); } }, false); });
无缝切换js代码
javascript实例学习之八——无缝切换效果的更多相关文章
- JavaScript实现多栏目切换效果
效果: 代码: <!doctype html> <html> <head> <meta http-equiv="Content-Type" ...
- JavaScript 实现 标签页 切换效果
JavaScript 实现 标签页 切换效果 版权声明:未经授权,严禁分享! 构建主体界面 HTML 代码 <h1>实现标签页的切换效果</h1> <ul id=&quo ...
- javascript马赛克遮罩图片切换效果:XMosaic.js(转)
新鲜出炉的javascript图片切换特效,实现的是马赛克遮罩切换.在flash里,好实现遮罩动画很简单,不过JS实现起来就有些困难了. XMosaic.js,与XScroll.js和XScroll2 ...
- 二、JavaScript语言--JS基础--JavaScript进阶篇--选项卡切换效果
利用JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居 200万内购五环三居 140万安家东三环 北京首现零首付楼 ...
- javascript 多图无缝切换
思路只要是ul移动前,首先将当前显示的li克隆岛ul最后,当每次运动执行完毕后,再将前面的li删除,如此循环. <!DOCTYPE html> <html> <head& ...
- 使用javascript实现图片上下切换效果并且实现顺序循环播放
<!doctype html><html lang="en"><head> <meta charset="UTF-8" ...
- 无JavaScript实现选项卡轮转切换效果
CSS: .box{width:200px; height:100px; border:1px solid #ddd; overflow:hidden;}.list{width:200px; he ...
- javascript小例子:實現四方向文本无缝滚动效果
实现一个文本无缝滚动的效果: <!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="zh-CN" class= ...
- [前端] html+css+javascript 实现选项卡切换效果
用html+css+js实现选项卡切换效果使用之前学过的综合知识,实现一个新闻门户网站上的常见选项卡效果: 文字素材:房产: 275万购昌平邻铁三居 总价20万买一居 200万内购五环三居 140万安 ...
随机推荐
- pod 安装 Masonry 遇到问题
pod 导入第三方库 Masonry: 在工程masonryTest的文件下新建一个Podfile文件 编辑如下内容: platform :ios, '8.0'xcodeproj 'mansoryTe ...
- tomcat启动报错:IOException while loading persisted sessions: java.io.EOFException.
tomcat启动错误代码: 严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFExce ...
- subclipse安装后从svn资源库视图check out的资源无法创建server
不要从根目录下check out,只要把根目录下所需要的项目check out即可.
- Memcached原理深度分析详解
Memcached是 danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能.关于这个东 西,相信很多人都用过,本文意在通 ...
- WCF中自定义消息编码器:压缩编码器的使用
通过抓包知道WCF在提交.返回数据的时候大多使用XML进行数据交互,如果返回DataTable那么这些数据将变得很大,通过查询找到一个对数据压缩的方法: http://msdn.microsoft.c ...
- random circle
<!doctype html><meta charset="utf-8"><html><head><title>D3 t ...
- [dpdk] 读官方文档(2)
续前节.切好继续: 一,文档里提到uio_pci_generic, igb_uio, vfio_pci三个内核模块,完全搞不懂,以及dpdk-devbind.py用来查看网卡状态,我得到了下边的输出: ...
- SQL Server 触发器【转】
触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程.触发器主要是通过事件进行触发被自动调用执行的.而存储过程可以通过存储过程的名称被调用. Ø 什么是触发器 触发器对表进行插入.更新.删 ...
- C# easyui datagrid 复选框填充。
具体效果如下: 首页
- (转)js的call和apply
1.方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call ...