每次移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.一直来说轮播图都是困扰刚进业内小白的一大难点,因为我们不仅需要自己作出一个比较完美的运动框架(虽然网上一抓一大把,但是哪有比自己做出来实现的有成就感,不是吗?^_^),还必须需要非常关键性的把握住 ...
随机推荐
- 一文读懂实用拜占庭容错(PBFT)算法
在区块链中有一个著名的问题,就是拜占庭将军问题,对于拜占庭将军问题,网上的文章已经多得不要不要了,今天和大家分享的是其相关的实用拜占庭容错算法,一起来看看吧. 实用拜占庭容错算法(Practi ...
- [IR课程笔记]Web search
一. 搜索引擎 组成部分: 1. 网络爬虫(web crawler) 2. 索引系统(indexing system) 3. 搜索系统 (searching system) consideratio ...
- API的理解和使用——有序集合
有序集合常用的命令 命令 功能 zadd key score member [score member ... ] 添加元素 zcard key 计算成员个数 zscore key member 计算 ...
- LeetCode:子集 II【90】
LeetCode:子集 II[90] 题目描述 给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集). 说明:解集不能包含重复的子集. 示例: 输入: [1,2,2] 输出: ...
- apace搭建站点
Listen 127.0.0.1:3310<VirtualHost *:3306> ServerName 127.0.0.1:3306 DocumentRoot "F:/Baid ...
- javascript(9)
var a=[890,10]; window.alert(a.valueOf()); window.alert(a); //个人觉得,输出a.valueOf()和a没有什么区别 //使用valueOf ...
- SpringBoot_01_正确、安全地停止SpringBoot应用服务
二.参考资料 1.正确.安全地停止SpringBoot应用服务
- codeforces 658B B. Bear and Displayed Friends(优先队列)
题目链接: B. Bear and Displayed Friends time limit per test 2 seconds memory limit per test 256 megabyte ...
- less语言特性
作为CSS的一种扩展,LESSCSS不仅向下兼容CSS的语法,而且连新增的特性也是使用CSS的语法.这样的设计使得学习LESS很轻松,而且你可以在任何时候回退到CSS. 变量 很容易理解: @nice ...
- ACM学习历程——UVA442 Matrix Chain Multiplication(栈)
Description Matrix Chain Multiplication Matrix Chain Multiplication Suppose you have to evaluate ...