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万安 ...
随机推荐
- li标签行内元素高度及居中
<head> <title><title> <style type="text/css"> * { padding: 0px; ma ...
- Codeforces Round #360 (Div. 2) C D E
每次AB秒出 到了C难度陡然上升...翻译都弄不懂... C 给出一张图 找出两个点的覆盖集(覆盖集是指这图中每条边都有至少一个点在这个点集里面) 并且两个点集没有交集 英文很难看懂...就是二分图的 ...
- 【MySql】赶集网mysql开发36条军规
[MySql]赶集网mysql开发36条军规 2012-05-14 14:02:33 分类: Linux 写在前面的话: 总是在灾难发生后,才想起容灾的重要性: 总是在吃过亏后,才记得曾经有人提醒 ...
- vbaexcel
Sub WordTest() Dim objwordApp As Word.Application Dim objword As Word.Document Dim objSeheet As Stri ...
- html EL表达式抬头
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <c:forE ...
- linux命令篇
普通用户登陆,充值root密码: sudo passwd root
- 【转】深入浅出 JavaScript 中的 this
Java 等面向对象的语言中,this 关键字的含义是明确且具体的,即指代当前对象.一般在编译期确定下来,或称为编译期绑定.而在 JavaScript 中,this 是动态绑定,或称为运行期绑定的,这 ...
- SSH框架中spring的原理
在ssh项目中,是有明确分工的,spring的作用就相当于将struts和hibernate连接起来,是将两个没有关系的框架的特性,方法,action都放在spring的配置文件中使他们建立关系.取他 ...
- Python中整数和浮点数
Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致. 基本的运算: 1 + 2 + 3 # ==> 6 4 * 5 - 6 # ==> 14 7.5 ...
- linux epoll 简单demo
一个简单的epoll demo ,同时接受多个客户端连接,并把接收到的字符串转化为大写字母返回给客户端 #include<stdio.h> #include<arpa/inet.h& ...