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

Javascript
javascript动画效果类封装代码
javascript关于复选框的实用脚本代码
javascript使用Dom改变超链接前面文本框的值
javascript select列表内容按字母倒序排序与按列表倒序排列
(兼容ff/ie)td点击背景变色特效
javascript跟随滚动条滚动的层(浮动AD效果)
javascript按指定格式输出文件最后更新时间
javascript实现的一个自定义长度的文本自动换行的函数。
javascript模仿百万格子小的一小段代码
兼容FireFox 用javascript写的一个画图函数
javascript写的一个表单动态输入提示的代码
不错的用resizeTo和moveTo两个函数实现窗口的“打乒乓球”效果
javascript一个判断浏览器类型的函数(类)
不错的用外部Javascript修正特定网页内容
找到了一篇jQuery与Prototype并存的冲突的解决方法
070823更新的一个[消息提示框]组件 兼容ie7
错误剖析之JavaScript的9个陷阱及评点
推荐一些非常不错的javascript学习资源站点
出现“不能执行已释放的Script代码”错误的原因及解决办法
给Javascript数组插入一条记录的代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 400 ::
收藏到网摘: 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);
})

在线演示
打包下载