本文
介绍一种用js实现交换动作效果的
方法,供大家
参考,具体分析如下:
在效果之后,点击交换
位置和左上角的信息。
点一点:
var = s_pic_li { 0 };
对于(var i = 0;i < s_pic_li.length;i++){
我s_pic_li { }。onclick =
函数(){
如果(此=现在)返回false;
无功W = now.offsetwidth;
var H = now.offsetheight;
var = now.offsetleft;
var t = now.offsettop;
VaR W1 = this.offsetwidth;
VaR H1 = this.offsetheight;
VaR L1 = this.offsetleft;
VaR T1 = this.offsettop;
Startrun(现在,{宽度W1,高度:H1,左:L1,顶部:T1 });
Startrun(,{宽度W,高度:H,左:我,上:T });
现在=这个;
}
}
循环给出每一个单击事件,获取双方的信息,然后
执行运动函数,并使用相关信息作为
参数。
最后,上面的代码:
非所有权
文件 <!——
身体,UL,李余量:0;填充:0;
字体:18px / 1.5宋体;颜色:# 333;}
# big_pic {宽度:500px;身高:400px;
背景:# CCC;
文本对齐:中心;
位置:绝对;}
# s_pic李{浮动:左;宽度:100px;
高度:80px;
显示:内联;
背景:# 06c;文本对齐:中心;
位置:绝对;顶部:310px;}
-->
<!——
在window.onload =函数(){
无功s_pic = document.getelementbyid(s_pic );
无功s_pic_li = s_pic.getelementsbytagname(礼);
var = s_pic_li { 0 };
对于(var i = 0;i < s_pic_li.length;i++){
我s_pic_li { }。onclick =函数(){
如果(此=现在)返回false;
无功W = now.offsetwidth;
var H = now.offsetheight;
var = now.offsetleft;
var t = now.offsettop;
VaR W1 = this.offsetwidth;
VaR H1 = this.offsetheight;
VaR L1 = this.offsetleft;
VaR T1 = this.offsettop;
Startrun(现在,{宽度W1,高度:H1,左:L1,顶部:T1 });
Startrun(,{宽度W,高度:H,左:我,上:T });
现在=这个;
}
}
}
功能getstyle(obj,name){
如果(obj。currentstyle){
返回的对象。currentstyle {姓名};
其他{ }
返回getcomputedstyle(obj,false){姓名};
}
}
功能startrun(obj,JSON,FN){
ClearInterval(obj。定时器);
obj.timer = setInterval(){()函数(
VaR是=真;
对于(JSON var attr){
var = 0;
如果(attr = =不透明度){
电流= math.round(parseFloat(getstyle(obj,ATTR))* 100);
其他{ }
电流= parseInt(getstyle(obj,ATTR));
}
速度=(JSON {
属性} - CUR) / 8
速度=速度> 0math.ceil(速度):Math.floor(速度);
如果(当前)!= { }){ JSON对象
是=假;
}
如果(attr = =不透明度){
obj.style.filter =Alpha(透明度=+(CUR +速度)+ );
obj.style.opacity =(CUR +速度) / 100;
其他{ }
obj。风格{属性} =电流+速度+PX;
}
}
如果(是){
ClearInterval(obj。定时器);
如果(FN){
(FN);
}
}
},30);
}
零
一
二
三
四
希望本文能对大家的javascript
程序设计有所帮助。