C3属性的轮播图(持续更新)
天气好冷,都不想写代码。就先写个没有焦点的轮播图,过两天在补全。
用的是CSS3的属性 过渡transition 和 转换 transfrom:translateX()
只做了轮播和 鼠标进入停止轮播,离开继续轮播这几项。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style>
.banner{
width: 960px;
height: 360px;
/* border: 1px solid black; */
margin: 100px auto;
overflow: hidden;
position: relative;
}
ul{
width: 200000px;
list-style: none;
height: 360px;
transform: translateX(-960px);
transition: all .5s;
}
li{
float: left;
}
img{
width: 960px;
height: 360px;
vertical-align: middle;
display: block;
}
*{
margin: 0;
padding: 0;
}
.right,.left {
position: absolute;
top: 50%;
font-size: 50px;
text-decoration: none;
color: white;
display: block;
background-color: #ccc;
width: 50px;
height: 60px;
text-align: center;
display: none;
}
.right{
right: 0px;
}
</style>
</head>
<body>
<div class="banner">
<a href="#" class="right">></a>
<a href="#" class="left"><</a>
<ul>
<li><a href="#"><img src="data:images/p_5.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_1.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_2.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_3.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_4.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_5.jpg" height="220" width="587" alt=""></a></li>
<li><a href="#"><img src="data:images/p_1.jpg" height="220" width="587" alt=""></a></li>
</ul> </div>
</body>
</html>
<script> //获取banner
var banner = document.querySelector('.banner');
//获取宽度
var bannerWidth = banner.offsetWidth;
//获取Ul
var moveUl = document.querySelector('ul');
//获取li
var lis = document.querySelectorAll('li');
//循环遍历li 为li绑定index
for (var i = 0; i < lis.length; i++) {
lis[i].index = i;
};
var index = 1;
var setTime = setInterval(function (){
index++;
moveUl.style.transition = 'all .5s'; moveUl.style.transform = 'translateX('+index*bannerWidth*-1+'px)';
},1000)
moveUl.addEventListener('webkitTransitionEnd', function (){
if(index == 6){
index = 1;
moveUl.style.transition = 'none';
moveUl.style.transform = 'translateX('+index*bannerWidth*-1+'px)';
}
}) //鼠标移入停止轮播
banner.onmouseenter = function (){
//清空计时器
clearInterval(setTime);
}
banner.onmouseleave = function (){
setTime = setInterval(function (){
index++;
moveUl.style.transition = 'all .5s';
moveUl.style.transform = 'translateX('+index*bannerWidth*-1+'px)';
},1000)
}
</script> 附 效果图

C3属性的轮播图(持续更新)的更多相关文章
- 自己动手丰衣足食之轮播图一动态修改marginTop属性实现轮播图
引言 学习jQuery有年头了,刚开始学习时自己动手写过轮播图,放的久了以至于忘了大致思路了.现在转而做前端,抽空把jquery轮播图拿出来写一写,把各种思路都自己练习练习,这里主要使用动态修改mar ...
- css动画属性--轮播图效果
通过css的动画属性实现轮播图的显示效果 代码如下: 主体部分: <div id="move"> <ul> <li><img src=&q ...
- JavaScript动画:offset家族和匀速动画详解(含轮播图的实现)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. offset家族简介 我们知道,三大家族包括:offset/scroll ...
- JavaScript动画:offset和匀速动画详解(含轮播图的实现)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. offset简介 我们知道,三大家族包括:offset/scroll/c ...
- ViewPager轮播图
LoopViewPagerLayout无限轮播 项目地址:https://github.com/why168/LoopViewPagerLayout 支持三种动画: 支持修改轮播的速度: 支持修改滑动 ...
- React视角下的轮播图
天猫购物网站最显眼的就是轮播图了.我在学习一样新js库,一个新框架或新的编程思想的时候,总是感叹"入门必做选项卡,进阶须撸轮播图."作为一个React组件,它是状态操控行为的典型, ...
- 一步一步拆解一个简单的iOS轮播图(三图)
导言(可以不看): 不吹不黑,也许是东半球最简单的iOS轮播图拆分注释(讲解不敢当)了(tree new bee).(一句话包含两个人,你能猜到有谁吗?提示:一个在卖手机,一个最近在卖书)哈哈... ...
- 初识 swift 封装轮播图
一.简介 换了一家公司.换了一个环境刚开始来公司自然不能有一丝一毫的放松,每天即使是没有什么工作也是看看这个博客.那个源码.尽量让自己更充实.慢慢的开始写几篇博客记录下自己遇到的一些问题和解决方法.其 ...
- Bootstrap实现轮播图
第一步:设计轮播图容器:div.carousel,添加slide平滑切换,并定义id,方便后面采用data属性来触发 <div class='carousel slide' id="t ...
随机推荐
- lombok
参考http://blog.csdn.net/mlinge/article/details/51340362
- Spark1.3使用外部数据源时条件过滤只要是字符串类型的值均报错
CREATE TEMPORARY TABLE spark_tbls USING org.apache.spark.sql.jdbc OPTIONS ( url 'jdbc:mysql://hadoop ...
- 高质量C++/C编程指南(林锐)
推荐-高质量C++/C编程指南(林锐) 版本/状态 作者 参与者 起止日期 备注 V 0.9 草稿文件 林锐 2001-7-1至 2001-7-18 林锐起草 V 1.0 正式文件 林锐 20 ...
- Objective-C之run loop详解[转]
做了一年多的IOS开发,对IOS和Objective-C深层次的了解还十分有限,大多还停留在会用API的级别,这是件挺可悲的事情.想学好一门语言还是需要深层次的了解它,这样才能在使用的时候得心应手,出 ...
- 迁移学习( Transfer Learning )
在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上来学习一个分类模型:然后利用这个学习到的模型来对测试文档进行分类与预测.然而,我们看到机器学习算法在当前的Web挖掘研究中存在着一个关 ...
- linux中的进程和线程
应用程序:可以被操作系统执行的一组指令和参数的集合,是静态的,并存储在磁盘空间中: 进程:在操作系统中在运行程序后,处于运行状态的程序,是应用程序的一个执行过程,同时也是操作系统分配内存,cpu等系统 ...
- MaxScript重启3dsMax的重新思考
前天看到一位大神写用MaxScript实现重启3dsMax的方法,用的是.net临时编译一个exe出来,然后用这个新的进程来关闭并开启新的max.感觉这种思路不错,或许可以用在别的地方.不过谈及max ...
- UIViewController生命周期
UIViewController生命周期
- js实现继承的两种方式
这是面试时面试官会经常问到问题: js的继承方式大致可分为两种:对象冒充和原型方式: 一.先说对象冒充,又可分为3种:临时属性方式.call().apply(): 1.临时属性方式: 当构造对象son ...
- Appium UI自动化的那些梗
@作者 彭海波 转载请注明出处 前言 由于需求的快速迭代和敏捷测试的要求,在测试过程中引入自动化成为必不可少的手段.作为一个互联网测试团队,我们自然也引入了自动化测试这个环节.在众多的测试框架中,我们 ...