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 相关文章推荐
执行iframe中的javascript方法
Oct 07 Javascript
js 字符串操作函数
Jul 25 Javascript
JavaScript 字符串处理函数使用小结
Dec 02 Javascript
jQuery EasyUI API 中文文档 DateTimeBox日期时间框
Oct 16 Javascript
JS中批量给元素绑定事件过程中的相关问题使用闭包解决
Apr 15 Javascript
JS判断数组中是否有重复值得三种实用方法
Aug 16 Javascript
JS中实现简单Formatter函数示例代码
Aug 19 Javascript
谈谈encodeURI和encodeURIComponent以及escape的区别与应用
Nov 24 Javascript
jquery实现图片平滑滚动详解
Mar 22 jQuery
javascript用rem来做响应式开发
Jan 13 Javascript
JS函数进阶之继承用法实例分析
Jan 15 Javascript
vue实现购物车列表
Jun 30 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获取指定函数定义在哪个文件中以及其所在的行号实例
2014/05/08 PHP
Codeigniter实现发送带附件的邮件
2015/03/19 PHP
php通过淘宝API查询IP地址归属等信息
2015/12/25 PHP
THINKPHP5.1 Config的配置与获取详解
2020/06/08 PHP
Js实现手机发送验证码时按钮延迟操作
2014/06/20 Javascript
js阻止事件追加的具体实现
2014/10/15 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
node.js中使用socket.io制作命名空间
2014/12/15 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
JS中位置与大小的获取方法
2016/11/22 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
JS如何获取地址栏的参数实例讲解
2018/10/06 Javascript
vue 项目build错误异常的解决方法
2019/04/22 Javascript
Vue中使用matomo进行访问流量统计的实现
2019/11/05 Javascript
多个Vue项目部署到服务器的步骤记录
2020/10/22 Javascript
[01:13:17]Secret vs NB 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python的ORM框架SQLObject入门实例
2014/04/28 Python
python基础教程之循环介绍
2014/08/29 Python
由浅入深讲解python中的yield与generator
2017/04/05 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
python对象转字典的两种实现方式示例
2019/11/07 Python
python数据库编程 ODBC方式实现通讯录
2020/03/27 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
html5手机键盘弹出收起的处理
2020/01/20 HTML / CSS
布鲁明戴尔百货店:Bloomingdale’s
2016/12/21 全球购物
印尼第一大家居、生活和家具电子商务:Ruparupa
2019/11/25 全球购物
文秘专业自荐信
2013/10/14 职场文书
火车的故事教学反思
2014/02/11 职场文书
2014年家长学校工作总结
2014/11/20 职场文书
《清澈的湖水》教学反思
2016/02/17 职场文书
四年级作文之植物
2019/09/20 职场文书
浅谈@Value和@Bean的执行顺序问题
2021/06/16 Java/Android
iOS 16进一步确认,一共支持16款iPhone
2022/04/28 数码科技
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers