js jquery做的图片连续滚动代码


Posted in Javascript onJanuary 06, 2008

核心代码如下,大家可以参考

<script src="/js/jquery.js"></script>  
<script>  
$(document).ready(function(){         $(".bannerbutton li").each(  
                     function(){  
                            $(this).click(  
                                   function(){  
                                          bannerGo($(this).attr("num"));  
                                   }  
                            )  
                     }  
              )  
       $(".img li:last").html($(".img li:first").html());  
});  
var active=1;//当前显示第1个  
var picNum=4;//4个图转换  
var time=500;//移动速度  
var intTime=3000;//自动转换间隔时间  
var width=568; //图片宽  
var perDistance=57;//每次移动距离  
var tagObj=0;  
var marquee;  
var autoMarquee;  
var distance;  
var tmpDistance=0;  
var listLeft=0;  
var tagLeft=0;  
var move=false;  

function bannerGo(tag){  
       if(active != tag){  
              if(!move){  
              listLeft=parseInt($(".banner ul.img").css("left"));  
              distance=(tag-active)*width;  
              tmpDistance=0;  
              perTime=parseInt(time*perDistance/distance);  
              if(tag>active){  
                     tagLeft=listLeft-distance;  
                     marquee=setInterval("Marquee(1)",perTime)  
              }else{  
                     tagLeft=listLeft-distance;  
                     marquee=setInterval("Marquee(0)",perTime)  
              }  
              active=Number(tag);  
              if(active==picNum+1)  
                     active=1;  
              move=true;  
              }  
       }  
}  
function Marquee(t){  
       var x=false;  
       if(t==0){  
              listLeft=listLeft+perDistance;  
              if((tagLeft-listLeft)>=perDistance){  
                     $(".banner ul.img").css("left",listLeft+"px");  
              }else{  
                     $(".banner ul.img").css("left",tagLeft+"px");  
                     x=true;  
              }  
       }else{  
              listLeft=listLeft-perDistance;  
              if((tagLeft-listLeft)<=perDistance){  
                     $(".banner ul.img").css("left",listLeft+"px");  
              }else{  
                     $(".banner ul.img").css("left",tagLeft+"px");  
                     x=true;  
              }  
       }  
       if(x){  
              clearInterval(marquee);  
              tmpDistance=0;  
              listLeft=0;  
              tagLeft=0;  
              move=false;  
              $(".bannerbutton li").css("background","url(/images/index/b2.gif) no-repeat");  
              $(".bannerbutton li[@num="+active+"]").css("background","url(/images/index/b1.gif) no-repeat");  
              if(tagObj==picNum+1){  
              $(".banner ul.img").css("left","0");  
              active=1;  
              }  
       }  
}  
function autoMarquee(){  
       tagObj=Number(active)+1;  
       bannerGo(tagObj);  
}  
function autoMarqueeStart(){  
       if(!move){  
       marquee=setInterval("autoMarquee()",intTime)  
       }else{  
       setTimeout("autoMarqueeStart()",time);  
       }  
}  
autoMarqueeStart();  
</script>  
<style>  
*{margin:0;padding:0;border:0}  
li{float:left;}  
ul{list-style-type:none;}  
.banner{height:228px;width:568px;overflow:hidden;}  
.bannerbutton li{  
       width:23px;  
       height:22px;  
       background:url(/images/index/b2.gif) no-repeat;  
       cursor:pointer;  
       line-height:22px;  
       text-align: center;  
       color: #fff;  
       font-weight: bold;  
}  
.banner .img li{float:left;}  
.banner .img {  
       position: relative;width:5600px;  
}  
body,td,th {  
       font-size: 12px;  
}  
body {  
       margin-left: 0px;  
       margin-top: 0px;  
       margin-right: 0px;  
       margin-bottom: 0px;  
}  
</style>  
<div class="banner">  
        <ul class="bannerbutton" style="position:absolute;z-index:2;top:200px;;left:10px;">  
                                   <li num=1 style="background:url(/images/index/b2.gif);">1</li>  
                                   <li num=2>2</li>  
                                   <li num=3>3</li>  
                                   <li num=4>4</li>  
       </ul>  
  <ul class="img" style="left:0px;">  
                            <li><img src="/images/temp/bn1.jpg" width="568" height="228"></li>  
                            <li><img src="/upload/image/2007-11-17_17-30-42.jpg" width="568" height="228"></li>  
                            <li><img src="/upload/image/4bb7eaf902000mnl.jpg" width="568" height="228"></li>  
                            <li><img src="/upload/image/Products/2007-11-16_22-11-15.jpg" width="568" height="228"></li>  
                            <li></li>  
   </ul>  
</div>
Javascript 相关文章推荐
JavaScript中继承的一些示例方法与属性参考
Aug 07 Javascript
jquery图片延迟加载 前端开发技能必备系列
Jun 18 Javascript
简单的JavaScript互斥锁分享
Feb 02 Javascript
Javscript删除数组中指定元素并返回新数组
Mar 06 Javascript
wap浏览自动跳转到wap页面的js代码
May 17 Javascript
js+html5实现canvas绘制简单矩形的方法
Jun 05 Javascript
浅谈javascript中的数据类型转换
Dec 27 Javascript
Bootstrap中data-target 到底是什么
Feb 14 Javascript
分分钟学会vue中vuex的应用(入门教程)
Sep 14 Javascript
js自定义input文件上传样式
Oct 26 Javascript
微信提示 在浏览器打开 效果实现过程解析
Sep 10 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
Sep 18 Javascript
javascript 屏蔽鼠标键盘的几段代码
Jan 02 #Javascript
js获取url参数的使用扩展实例
Dec 29 #Javascript
javascript js cookie的存储,获取和删除
Dec 29 #Javascript
javascript下function声明一些小结
Dec 28 #Javascript
用js实现的页面关键字密度查询代码
Dec 27 #Javascript
DOMAssitant最新版 DOMAssistant 2.5发布
Dec 25 #Javascript
用cookies实现的可记忆的样式切换效果代码下载
Dec 24 #Javascript
You might like
PHP中计算字符串相似度的函数代码
2012/12/29 PHP
php如何解决无法上传大于8M的文件问题
2014/03/10 PHP
php中curl和file_get_content的区别
2014/05/10 PHP
如何让搜索引擎抓取AJAX内容解决方案
2014/08/25 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
2016/03/06 PHP
PHP中number_format()函数的用法讲解
2019/04/08 PHP
浅析PHP7 的垃圾回收机制
2019/09/06 PHP
laravel在中间件内生成参数并且传递到控制器中的2种姿势
2019/10/15 PHP
JQuery FlexiGrid的asp.net完美解决方案 dotNetFlexGrid-.Net原生的异步表格控件
2010/09/12 Javascript
JavaScript动态调整TextArea高度的代码
2010/12/28 Javascript
js实现照片墙功能实例
2015/02/05 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
jQuery实现删除li节点的方法
2016/12/06 Javascript
jQuery实现可拖拽3D万花筒旋转特效
2017/01/03 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
js中setTimeout的妙用--防止循环超时
2017/03/06 Javascript
php简单数据库操作类的封装
2017/06/08 Javascript
BootStrap的双日历时间控件使用
2017/07/25 Javascript
JavaScript中各数制转换全面总结
2017/08/21 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
在angularJs中进行数据遍历的2种方法
2018/10/08 Javascript
vue通过cookie获取用户登录信息的思路详解
2018/10/30 Javascript
js数组去重的方法总结
2019/01/18 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
python3-flask-3将信息写入日志的实操方法
2019/11/12 Python
python创建子类的方法分析
2019/11/28 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
最新远光软件笔试题面试题内容
2013/11/08 面试题
教师师德反思材料
2014/02/15 职场文书
2015最新学生自我评价范文
2015/03/03 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
详解非极大值抑制算法之Python实现
2021/06/28 Python
springboot 自定义配置 解决Boolean属性不生效
2022/03/18 Java/Android