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

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

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


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

在线演示
打包下载