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 火狐(firefox)不显示本地图片问题解决
Jul 05 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
Oct 09 Javascript
javascript使用appendChild追加节点实例
Jan 12 Javascript
jQuery插件pagination实现分页特效
Apr 12 Javascript
详解Angular2中的编程对象Observable
Sep 17 Javascript
javascript 解决浏览器不支持的问题
Sep 24 Javascript
基于BootStrap与jQuery.validate实现表单提交校验功能
Dec 22 Javascript
JavaScript禁止微信浏览器下拉回弹效果
May 16 Javascript
AngularJS实现进度条功能示例
Jul 05 Javascript
实例分析编写vue组件方法
Feb 12 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
vue实现移动端项目多行文本溢出省略
Jul 29 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
索尼ICF-SW100收音机评测
2021/03/02 无线电
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
2020/03/02 PHP
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
js判断当前页面在移动设备还是在PC端中打开
2016/01/06 Javascript
如何用angularjs制作一个完整的表格
2016/01/21 Javascript
详解js实现线段交点的三种算法
2016/08/09 Javascript
angularjs点击图片放大实现上传图片预览
2017/02/24 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
node实现登录图片验证码的示例代码
2018/04/20 Javascript
vue.js前后端数据交互之提交数据操作详解
2018/04/24 Javascript
js 数组详细操作方法及解析合集
2018/06/01 Javascript
Vue js 的生命周期(看了就懂)(推荐)
2019/03/29 Javascript
vue实现PC端录音功能的实例代码
2019/06/05 Javascript
JS PHP字符串截取函数实现原理解析
2020/08/29 Javascript
Python中操作MySQL入门实例
2015/02/08 Python
Python socket网络编程TCP/IP服务器与客户端通信
2017/01/05 Python
基于Python的XSS测试工具XSStrike使用方法
2017/07/29 Python
利用Python2下载单张图片与爬取网页图片实例代码
2017/12/25 Python
python实现给scatter设置颜色渐变条colorbar的方法
2018/12/13 Python
Python Pillow Image Invert
2019/01/22 Python
django中使用POST方法获取POST数据
2019/08/20 Python
Python解析多帧dicom数据详解
2020/01/13 Python
浅谈CSS3动画的回调处理
2016/07/21 HTML / CSS
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
JAKO-O德国野酷台湾站:德国首屈一指的婴幼童用品品牌
2019/01/14 全球购物
CK加拿大官网:Calvin Klein加拿大
2020/03/14 全球购物
求职者简历中的自我评价
2013/10/20 职场文书
毕业自我鉴定
2013/11/05 职场文书
行政专员工作职责
2013/12/22 职场文书
工作自我评价怎么写
2014/01/29 职场文书
国际贸易系求职信
2014/08/09 职场文书
祖国在我心中演讲稿450字
2014/09/05 职场文书
小学教师教学反思
2016/02/24 职场文书
详解PHP用mb_string处理windows中文字符
2021/05/26 PHP
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技