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 相关文章推荐
jQuery 性能优化指南 (1)
May 21 Javascript
基于jquery的跨域调用文件
Nov 19 Javascript
关于JS字符串函数String.replace()
Apr 07 Javascript
用jquery.sortElements实现table排序
May 04 Javascript
在Python中使用glob模块查找文件路径的方法
Jun 17 Javascript
jQuery实现滚动切换的tab选项卡效果代码
Aug 26 Javascript
15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】
May 25 Javascript
JavaScript如何实现跨域请求
Aug 05 Javascript
jQuery遍历节点方法汇总(推荐)
May 13 jQuery
vue 实现把路由单独分离出来
Aug 13 Javascript
JS轮播图的实现方法2
Aug 25 Javascript
比较node.js和Deno
Apr 27 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显示今天、今月、上月、今年的起点/终点时间戳的代码
2011/05/25 PHP
Codeigniter中集成smarty和adodb的方法
2016/03/04 PHP
PHP中数组转换为SimpleXML教程
2019/01/27 PHP
jQuery实现的类flash菜单效果代码
2010/05/17 Javascript
Javascript匿名函数的一种应用 代码封装
2010/06/27 Javascript
javascript中强制执行toString()具体实现
2013/04/27 Javascript
下拉菜单点击实现连接跳转功能的js代码
2013/05/19 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
2013/08/19 Javascript
Jquery检验手机号是否符合规则并根据手机号检测结果将提交按钮设为不同状态
2015/11/26 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
Bootstrap的modal拖动效果
2016/12/25 Javascript
JS中利用FileReader实现上传图片前本地预览功能
2018/03/02 Javascript
vue-cli V3.0版本的使用详解
2018/10/24 Javascript
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
[49:21]完美世界DOTA2联赛循环赛 Ink Ice vs LBZS BO2第二场 11.05
2020/11/06 DOTA
Python3.2中Print函数用法实例详解
2015/05/19 Python
python绘制条形图方法代码详解
2017/12/19 Python
几种实用的pythonic语法实例代码
2018/02/24 Python
Python实现的读取电脑硬件信息功能示例
2018/05/30 Python
Python中利用LSTM模型进行时间序列预测分析的实现
2019/07/26 Python
Python使用进程Process模块管理资源
2020/03/05 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
俄罗斯女装店:12storeez
2019/10/25 全球购物
50道外企软件测试面试题
2014/08/18 面试题
情侣吵架检讨书
2014/02/05 职场文书
推广普通话演讲稿
2014/05/23 职场文书
大学生活动总结模板
2014/07/02 职场文书
庆祝教师节演讲稿
2014/09/03 职场文书
助学贷款贫困证明
2014/09/23 职场文书
质量负责人岗位职责
2015/02/15 职场文书
学校教学管理制度
2015/08/06 职场文书
银行求职信怎么写
2019/06/20 职场文书
感恩信:写给爸爸妈妈的一封感谢信
2019/09/12 职场文书
python本地文件服务器实例教程
2021/05/02 Python
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
2021/06/09 Python
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL