每次移1px的无缝轮播图
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>每次移1px的案例</title>
<script src="https://code.jquery.com/jquery-3.0.0.min.js"></script>
<style type="text/css">
body{
background: pink;
}
.d1{
margin-top: 20px;
width: 100px;
overflow: hidden;
position: relative;
height: 80px;
background: #fff;
}
.d2{
width: 1880px;
position: absolute;
}
.d2>p{
margin-top: 0px;
float: left;
width: 100px;
}
.p1{
background: red;
}
.p2{
background: yellow;
}
.p3{
background: green;
}
</style>
</head>
<body>
<div class="d1">
<div class="d2">
<p class="p1">1</p>
<p class="p2">2</p>
<p class="p3">3</p>
</div>
</div>
</body>
</html>
<script type="text/javascript">
var num=0;
var pWidth = $('.d2>p').innerWidth()*$('.d2>p').length;
var d2content =$('.d2').html();
$('.d2').append(d2content)
var time = setInterval(function(){
num++
if(num>3){
num=0;
}
$('.d2').animate({'left':'-'+num*100+'px'});
},1000)
</script>
<!--
1、做轮播图如果是每次移动1px就用css({'left':'-'+num+'px'}),不要用animate({'left':'-'+num+'px'})因为animate其实是css({'left':'-'+num+'px'})+css的transition组合,每次会有一卡一卡的效果(这里的num所有要偏移图片集合的宽度)。
2、做轮播图如果是一次性移动一整张图片用css({'left':'-'+num*100+'px'})无动画效果直接切换到下一张,用animate({'left':'-'+num*100+'px'})有动画效果,会看到是一整张图从右边到左边一个滑动的效果(这里的num是图片的张数,100px是每张图片的完度)。
-->
讲解
<div class="d1">
<div class="d2">
<p class="p1">1</p>
<p class="p2">2</p>
<p class="p3">3</p>
</div>
</div>
//最外层 一定要设置需要显示的宽度、隐藏宽度以外的部分、相对定位。
.d1{
width: 300px;
overflow: hidden;
position: relative;
}
//第二层 宽度设置到最大、绝对定位。这是被移动的部分。
.d2{
width: 1880px;
position: absolute;
}
//第三层 浮动及可。
.d2>p{
float:left;
}
//为了能把d2里的内容无缝的轮播,需要把d2的内容复制一份.滚动的宽度不大于所有p集合的宽度(没有复制前)
var num=0;
var pWidth = $('.d2>p').innerWidth()*$('.d2>p').length;
var d2content =$('.d2').html();
$('.d2').append(d2content)
var time = setInterval(function(){
num++
if(num>pWidth){
num=0;
}
$('.d2').css('left','-'+num+'px');
},30)
每次移1px的无缝轮播图的更多相关文章
- js 实现淘宝无缝轮播图效果,可更改配置参数 带完整版解析代码[slider.js]
前言: 本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽. 本篇文章为您分析一下原生JS写淘宝无缝轮播图效果 需求分析: ...
- JQ无缝轮播图-插件封装
类似京东的这种无缝轮播效果: 实例代码下载 HTML代码: <body> <!-- /*觅me 探索生活*/ --> <div class="test" ...
- jQuery插件slides实现无缝轮播图特效
初始化插件: slides是一款基于jQuery无缝轮播图插件,支持图内元素动画,可以自定义动画类型 1 2 3 4 5 6 7 8 9 10 $(".slideInner").s ...
- jQuery无缝轮播图思路详解-唯品会
效果图如上: 需求:图片自动轮播,鼠标移上停止播放,离开恢复播放,箭头切换图片. html代码 <!--轮播图大盒子开始--> <div class="wrap" ...
- Jquery无缝轮播图的制作
轮播是html页面中比较常见的一种展现形式,也是基础,把轮播图做好,是排版中比较关键的 1.首先是轮播的html元素放置:做轮播之前,要有一个初步的认识 2.每个元素的位置怎样摆放,也是很关键的,这里 ...
- 原生js写一个无缝轮播图插件(支持vue)
轮播图插件(Broadcast.js) 前言:写这个插件的原因 前段时间准备用vue加上网易云的nodejs接口,模拟网易云音乐移动端.因为想自己写一遍所有的代码以及加固自己的flex布局,所以没有使 ...
- js之无缝轮播图
HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> < ...
- 原生JS无缝轮播图
(1)原理介绍 (2)静态布局 <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...
- Web前端原生JavaScript浅谈轮播图
1.一直来说轮播图都是困扰刚进业内小白的一大难点,因为我们不仅需要自己作出一个比较完美的运动框架(虽然网上一抓一大把,但是哪有比自己做出来实现的有成就感,不是吗?^_^),还必须需要非常关键性的把握住 ...
随机推荐
- 【python】python调用shell方法
在python脚本中,有时候需要调用shell获取一下信息,下面介绍两种常用的调用方法. 第一种,os.system() 这个函数获取的是命令的执行状态,比如 >>> import ...
- 解决webpack不能匹配post请求的问题
解决webpack不能匹配post请求的问题 webpack的dev-server只能匹配get请求,在本地做本地数据的时候会很不方便. 可以使用如下两种办法解决: 1.在webpack.config ...
- cmd 环境变量设置方法详细解释
cmd设置环境变量可以方便我们bat脚本的运行,但是要注意的是变量只在当前的cmd窗口有作用(局部生效),如果想要设置持久的环境变量需要我们通过两种手段进行设置:一种是直接修改注册表,另一种是通过我的 ...
- IP地址-计算机网络
如需转载请联系:fengxw6@mail2.sysu.edu.cn 未经许可,禁止转载. ---Sun Yat-sen University 冯兴伟 1. MAC地址和IP地址都是全局的(全球分配) ...
- cad定制快捷键
1.工具-自定义-编辑程序参数,改好之后,关闭. 2.在命令行输入:reinit-选择PGP文件-确定.
- 【译】在ES6中如何优雅的使用Arguments和Parameters
原文地址:how-to-use-arguments-and-parameters-in-ecmascript-6 ES6是最新版本的ECMAScript标准,而且显著的改善了JS里的参数处理.我们现在 ...
- leetcode 19. Remove Nth Node From End of List(链表)
Given a linked list, remove the nth node from the end of list and return its head. For example, Give ...
- codevs 3049 舞蹈家怀特先生
题目描述 Description 怀特先生是一个大胖子.他很喜欢玩跳舞机(Dance Dance Revolution, DDR),甚至希望有一天人家会脚踏“舞蹈家怀特先生”.可惜现在他的动作根本不能 ...
- 【Lintcode】135.Combination Sum
题目: Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C ...
- python爬虫知识点总结(八)Selenium库详解
官方学习文档:http://selenium-python.readthedocs.io/api.html 一.什么是Selenium? 答:自动化测试工具,支持多种浏览器.用来驱动浏览器,发出指令让 ...