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 相关文章推荐
Prototype Class对象学习
Jul 19 Javascript
jquery 动态创建元素的方式介绍及应用
Apr 21 Javascript
jquery和js实现对div的隐藏和显示方法
Sep 26 Javascript
Javascript前端UI框架Kit使用指南之kitjs事件管理
Nov 28 Javascript
js获取图片宽高的方法
Nov 25 Javascript
谈谈JavaScript类型系统之Math
Jan 06 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
May 31 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
Aug 05 Javascript
js 模仿锚点定位的实现方法
Nov 19 Javascript
详解JavaScript中this的指向问题
Jan 20 Javascript
原生js实现验证码功能
Mar 16 Javascript
JS实现判断移动端PC端功能
Feb 21 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使用PDO执行SQL语句的方法分析
2017/02/16 PHP
破除一些网站复制、右键限制
2006/11/04 Javascript
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
Node.js 服务器端应用开发框架 -- Hapi.js
2014/07/29 Javascript
node.js中的buffer.Buffer.byteLength方法使用说明
2014/12/10 Javascript
angularJS中router的使用指南
2015/02/09 Javascript
js+html5操作sqlite数据库的方法
2016/02/02 Javascript
归纳下js面向对象的几种常见写法总结
2016/08/24 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
React中上传图片到七牛的示例代码
2017/10/10 Javascript
AngularJS中controller控制器继承的使用方法
2017/11/03 Javascript
JS脚本实现网页自动秒杀点击
2018/01/11 Javascript
vue完成项目后,打包成静态文件的方法
2018/09/03 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
2020/07/17 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
Python操作Word批量生成文章的方法
2015/07/28 Python
MAC中PyCharm设置python3解释器
2017/12/15 Python
python中plot实现即时数据动态显示方法
2018/06/22 Python
pytorch实现mnist分类的示例讲解
2020/01/10 Python
Python 跨.py文件调用自定义函数说明
2020/06/01 Python
零基础学Python之前需要学c语言吗
2020/07/21 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
html5中监听canvas内部元素点击事件的三种方法
2019/04/28 HTML / CSS
波兰运动鞋网上商店:e-Sporting
2018/02/16 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
Ruby如何定义一个类
2012/10/08 面试题
销售副总经理岗位职责
2013/12/11 职场文书
岗位说明书范文
2014/05/07 职场文书
高中学生自我评价范文
2014/09/23 职场文书
2014年安置帮教工作总结
2014/12/11 职场文书
死亡诗社观后感
2015/06/05 职场文书
《秋天的雨》教学反思
2016/02/19 职场文书
python中subplot大小的设置步骤
2021/06/28 Python
《现实主义勇者的王国再建记》第三弹OST全曲试听片段公开
2022/04/04 日漫