当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 广告切换效果(缓动切换)

Javascript
经常用到的JavasScript事件的翻译
Javascript下的keyCode键码值表
用javascript动态调整iframe高度的代码
javascript应用:Iframe自适应其加载的内容高度
javascript 控制弹出窗口
用javascript父窗口控制只弹出一个子窗口
给moz-firefox下添加IE方法和属性
FireFox中textNode分片的问题
对google个性主页的拖拽效果的js的完整注释[转]
身份证号码前六位所代表的省,市,区, 以及地区编码下载
一个友好的.改善的 Object.prototype.toString的实现
如何写一个通用的JavaScript效果库!(1/2)
如何写一个通用的JavaScript效果库!(2/2)
几个高效,简洁的字符处理函数
无语,javascript居然支持中文(unicode)编程!
ie 处理 gif动画 的onload 事件的一个 bug
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
firefox 和 ie 事件处理的细节,研究,再研究-----书写同时兼容ie和ff的事件处理代码
深入聊聊Array的sort方法的使用技巧.详细点评protype.js中的sortBy方法
JavaScript 中的replace方法说明

Javascript 中的 广告切换效果(缓动切换)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 339 ::
收藏到网摘: n/a

写了一个 广告切换效果(点击查看DEMO) 形式是常见的形式,但是在功能上有一定的拓展。 主要功能:
1,自动检测广告图片个数 生产广告序列
2,缓动切换,仿原版FLASH 效果
3,自动按照设置周期播放
4,鼠标划入停止自动播放 鼠标移走恢复自动播放
其中第一个功能扩展比较实用,这样就没有必要分别 更新图片 和 图片个数了。
应用了 jQuery 的 easing 插件

贴一下程序代码 :
复制代码 代码如下:

$(document).ready(function(){
var MyTime=false; //定时器
var piclist=$("#piclist"); //图片列表
var num=piclist.find("li").length; //自动检测图片广告个数
var picnum=$("#picnum");
var index=0; //起始序列
var width=388; //广告宽度
var movetime=600; //单次动画所用时间
var speed=3000; //切换时间间隔

//标记当前
function cur(ele){
ele=$(ele)? $(ele):ele;
ele.addClass("cur").siblings().removeClass("cur");
}
function int(){
piclist.css({"width":width*num+"px"});
var nums="";
for(i=0; i<num; i++){
if(i<9){
nums+="<span>"+0+(i+1)+"<\/span>";
} else{
nums+="<span>"+(i+1)+"<\/span>";
}
}
picnum.html(nums);
cur(picnum.find("span").eq(index));
}
//初始化执行
int();
$(picnum.find("span")).mouseover(function(){
index=$("#picnum span").index($(this)[0]);
//if(!piclist.is(":animated")){
move();
//}
})

var move=function move(){
piclist.animate({"left":-width*index+"px"},{queue:false,duration:movetime, easing: "easeOutQuart"});
cur(picnum.find("span").eq(index));
}
$('div.flsad').hover(function(){
if(MyTime){
clearInterval(MyTime);
}
},function(){
MyTime = setInterval(function(){
move()
index++;
if(index==num){index=0;}
} , speed);
});
//自动开始
MyTime = setInterval(function(){
move();
index++;
if(index==num){index=0;}
} , speed);
})

在线演示
打包下载