JQ轮播图自动轮播效果及bug解决

  1 <!DOCTYPE html>
  2 <html>
  3     <head>
  4         <meta charset="UTF-8">
  5         <title></title>
  6         <style type="text/css">
  7             *{margin:0;padding:0;}
  8             #box{width:600px;height:400px;margin:0 auto;position:relative;overflow:hidden;}
  9             #box .con{width:3600px;height:400px;position:absolute;left:0;top:0;}
 10             #box .con img{float:left;}
 11             #box ul{position:absolute;bottom:0;right:0;}
 12             #box ul li{list-style:none;float:left;margin-left:1px;width:80px;height:26px;line-height:26px;
 13                      color:#fff;text-align:center;background:red;opacity:0.7;}
 14
 15         </style>
 16         <script src="js/jquery.1.9.1.js" type="text/javascript" charset="utf-8"></script>
 17        <script type="text/javascript">
 18               $(function(){
 19                   //大总管变量默认值为0,即第一项
 20                   var c=0;
 21                   //1代表不能点击,2代表能点击
 22                   var sta=2;
 23
 24
 25                   //无缝滚动定时器
 26                   function run(){
 27                       c++;
 28                       //当C=6,找到ul,把left重置为0,c为1
 29
 30                       if(c==6){
 31                           $("#box .con").css({‘left‘:‘0‘});
 32                           c=1;
 33                       }
 34                            var l=c*-600; //600为每张图片的宽度
 35                            sta=1;//定时器轮播时,不能点击
 36                          //con元素向左移动,运动前要加stop()
 37                          $("#box .con").animate({"left":l+"px"},400,function(){
 38                              //执行完动画,将sta转为可以点击
 39                              sta=2;
 40                          });
 41
 42                              if(c==5){
 43                           $(‘#box ul li‘).eq(0).css({‘opacity‘:‘0.9‘}).siblings().css({‘opacity‘:‘0.7‘});
 44                       }else{
 45                            //让当前的li透明度为0.9,兄弟li为0.7
 46                          $("#box ul li").eq(c).css({‘opacity‘:‘0.9‘}).siblings().css({‘opacity‘:‘0.7‘});
 47                       }
 48
 49                   }
 50
 51                    //全局变量timer
 52                    var timer=setInterval(run,1000);
 53                    var t;
 54
 55
 56                     //给li添加单击切换效果
 57                     $(‘#box ul li‘).click(function(){
 58                         if(sta==1){//不能点击
 59                             return; //后面代码不执行,返回
 60                         }
 61                         //清理定时炸弹
 62                         clearTimeout(t);
 63                         //点击时候,先清理定时器
 64                         clearInterval(timer);
 65                       t=setTimeout(function(){
 66                           timer=setInterval(run,2000);
 67                       },400)
 68                          //获得当前被点击li的序号
 69                          c=$(this).index();
 70                          //计算大DIV应该到达的Left的值
 71                          var left=c*-600;
 72                          //con元素向左移动,运动前要加stop()
 73
 74                          $("#box .con").stop().animate({"left":left+"px"},300);
 75                          //让当前的li透明度为0.9,兄弟li为0.7
 76                          $(this).css({‘opacity‘:‘0.9‘}).siblings().css({‘opacity‘:‘0.7‘});
 77                     })
 78               })
 79        </script>
 80     </head>
 81     <body>
 82         <div id="box">
 83             <div class="con">
 84                 <!-- img[src=img/$.jpg]*5 -->
 85                 <img src="img/1.jpg" alt="" />
 86                 <img src="img/2.jpg" alt="" />
 87                 <img src="img/3.jpg" alt="" />
 88                 <img src="img/4.jpg" alt="" />
 89                 <img src="img/5.jpg" alt="" />
 90                 <!--复制一份第一张图片-->
 91                 <img src="img/1.jpg" alt="" />
 92             </div><!--end of con-->
 93             <ul>
 94                 <li style="opacity:0.9">包包</li>
 95                 <li>男装</li>
 96                 <li>女装</li>
 97                 <li>男鞋</li>
 98                 <li>女鞋</li>
 99             </ul>
100         </div>
101     </body>
102 </html>

效果图如下:

学习课程网址:http://study.163.com/course/courseLearn.htm?courseId=1003498007#/learn/video?lessonId=1004152564&courseId=1003498007

时间: 2024-10-13 03:55:08

JQ轮播图自动轮播效果及bug解决的相关文章

Android较低版本(&lt;5.2) 页面默认Select选择框效果的BUG解决

Bug描述: 使用低版本安卓(<5.2),在微信上打开网页,点击下拉框,会出现如下图所示的用来展示select选项的弹出框: 在选项较少的时候,可以向下滑动,将选项滑到底部 滑动前: 滑动后: 期望达到的效果: 解决方案: 判断是否是微信环境: function isWeixinBrowser(){ return /micromessenger/.test(navigator.userAgent.toLowerCase()); } 判断安卓版号: var userAgent = navigato

首页banner焦点图自动轮播效果

今天来介绍一下我前两天写一个小任务的时候遇到的一些问题,如果能够有所帮助或者启发,那将是我的荣幸. <div class="banner"> <a class="" href="#" target="_blank"><img src="images/newpic.gif"></a>        <a class="" href=&q

JQuery图片自适应窗口轮播图(淡入淡出效果)

<script>var w = $(window).width();//获取窗口宽度var h = $(window).height();//获取窗口高度 $(".box").width(w);//赋值给图片外包$(".box").height(h); function carousel(){ var v1=$(".box .text");//消失的元素 var v2;//要显示的元素 if(v1.next().length==0){

解决ionic2/ionic3轮播图切换页面或者点击过后不自动轮图

我们在ionic2/ionic3开发的过程中会出现切换页面或者滑动切换轮播图出现轮播图不再轮播的情况,这其实需要一些配置. 首先在运用到轮播图的component中引入 import {ViewChild } from '@angular/core'; import { Slides } from 'ionic-angular'; 然后 @ViewChild(Slides) slides: Slides; //解决切换其他页面回去轮播图不动问题 ionViewWillEnter(){ this.

js实现图片轮播图(一)

一.实现原理 (1)将所有图片放在一个父容器div里面,通过display属性来设置图片的出现与隐藏: (2)轮播图分为手动轮播和自动轮播: 手动轮播的重点是每次点击图片下方的小圆圈,获得它的索引号,并让与之对应索引号的图片显示,并且此时的小圆圈为高亮显示: 自动轮播:利用定时器setInterval(),来每隔一定的时间来播放一次图片. (3)所有的基础知识:dom操作,定时器,事件运用. 二.轮播图页面布局: <div id="content">   <!-- 总

原生js手动轮播图

手动轮播图,为轮播图中的一种,轮播图主要有无缝轮播,手动轮播,延迟轮播,切换轮播等等... 轮播图主要用于展现图片,新出商品,词条,又能美观网页.給网页中增加动态效果. 手动轮播,是小编认为最简单的一种轮播方式,既能左右翻页,还能通过悬浮按钮,快速预览图片,所以今天就给大家写一个原生js手动轮播图. 一,利用JavaScript制作手动轮播图,首先排版. 引入默认样式表(可以手写): <link rel="stylesheet" href="css/Default st

关于轮播图,我知道的不多。

关于轮播图,我确实是知道的不多,想来想去就只是那么的多,. 不过我还是打算将自己知道的写出来,首先轮播图的布局,我先来上一张照片 简单的布局,视窗中我能见到的只有一张照片和左右两个按钮还有下面两个按钮,视窗的大小就是单张图片的大小,几个按钮用position定位的方式将其定位到想要的位置了,那么四副图片的直接父元素的宽度是多少呢,那就是四副图片的宽度相加的总和,一定的让图片display:block;这样才能去掉图片默认距离,. 在给图片float:left,在让最外层的盒子超出部分隐藏就可以了

使用jQuery实现轮播图

一共6张图片,每1.5m自动切换播放图片,鼠标在图片内则停止自动播放.可通过底部列表手动播放图片,也可通过图片两侧按钮手动点击切换图片.效果图如下. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>轮播图</title> <script src="https://libs.baidu.co

Qt实现QQ音乐轮播图

由于项目中需要使用到类似轮播图这样的东西,百度之后发现并没有效果不错的案例,于是仿照QQ音乐的轮播图写了一个 效果如下 和QQ音乐的基本没什么差别 这里记录一下需要用到的模块QParallelAnimationGroup.QPropertyAnimation.QGraphicsOpacityEffect 基本实现原理是,通过并行动画组QParallelAnimationGroup添加QPropertyAnimation的geometry属性作为动画,其中每次切换(左移为例)geometry属性的