Javascript实现淘宝幻灯片显示效果
第一,结果如下:
两。代码段:
js代码段:
功能getClass(oparent,name){
var arr = { };
var obj = oparent.getelementsbytagname(*);
对于(var i = 0;i < obj.length;i++){
如果(obj {我}。类名= =名字){
Arr.push(obj {我});
}
}
报酬;
}
功能startmove(obj,JSON,fnend){
var = 0;
ClearInterval(obj。定时器);
obj。定时器= setInterval(){()函数(
无功ostop =真;
对于(JSON var attr){
如果(attr = = 'opacity){
电流= math.round(parseFloat(getstyle(obj,ATTR)×100));
其他{ }
电流= parseInt(getstyle(obj,ATTR));
}
速度=(JSON {属性} - CUR) / 10;
速度=速度> 0math.ceil(速度):Math.floor(速度);
如果(当前)!= { }){ JSON对象
ostop = false;
}
如果(attr = = 'opacity){
obj。风格{属性} =(CUR +速度) / 100;
obj。风格。过滤器=Alpha(透明度:+我+速度+);
其他{ }
obj。风格{属性} =电流+速度+PX;
}
}
如果(ostop){
ClearInterval(obj。定时器);
如果(fnend)fnend();
}
},30);
};
功能getstyle(obj,name){
如果(obj。currentstyle){
返回的对象。currentstyle {姓名};
其他{ }
返回getcomputedstyle(obj,false){姓名};
}
};
CSS部分:
* { margin: 0px;padding: 0px;}
img {
边界:无;宽度:470px;身高:150px;
浮点数:左;
}
pic_body李{。
宽度:470px;身高:150px;
浮:左;Z指数:3001;}
UL {
列表样式:无;位置:绝对;顶部:0px;左:0px;
宽度:470px;身高:150px;背景:黄色;Z指数:3000;
}
# DIV1 { border: 1px solid黑;宽度:470px;身高:150px;
位置:相对;保证金:100px汽车;填充:0px;
溢出:隐藏;
}
# DIV1 OL {底:10px;右:10px;
位置:绝对;Z指数:9999;
}
背景:黄色;浮动:左边;
显示:内联;右边距:3px;填充:3px 4px;
位置:相对;顶部:0px;左:0px;
字体:字体大小:12px Arial;
游标:指针;筛选器:alpha(不透明:60);不透明:0.6;
border: 1px solid黑;
}
活动{背景:黄色;字体重量:大胆;
填料:4px 6px;过滤器:α(不透明度:100);不透明度:1;
}
HTML的一部分:
窗口。指针函数(){
var现在= 0;
无功odiv = document.getelementbyid('div1);
VaR工具= odiv.getelementsbytagname('ol){ 0 };
VaR OLI = ool.getelementsbytagname(李的);
VaR,= getClass(odiv,'pic_body){ 0 };
对于(var i = 0;i < oli.length;i++){
OLI {我}。指数=我;
OLI {我}。onclick =函数(){
Now=this.index;
(TAB);
};
}
函数选项卡(){
对于(var i = 0;i < oli.length;i++){
OLI {我} classname = '';
}
OLI {现在}。类名=活动;
startmove(OUL,{顶:150 *现在});
};
函数下一步(){
现在+;
如果(= = OLI。长度){
现在= 0;
}
(TAB);
};
VaR定时器= setInterval(下,3000);
灵魂。onmouseover =函数(){
ClearInterval(定时器);
};
灵魂。onmouseout=函数(){
定时器= setInterval(下,3000);
};
}
一
二
三
四
五
希望本文能对大家的javascript程序设计有所帮助。