一、实现
var div = document.getElementsByTagName('div')[0];
var btn = document.getElementsByTagName('button')[0];
btn.onclick = function(){
cushion(div,0.8)
}
function getStyle(dom,attr){
if(window.getComputedStyle){
return window.getComputedStyle(dom,null)[attr];
}else{
return dom.currentStyle[attr];
}
}
var timer;
function cushion(dom,target){
clearInterval(timer);
var speed,iCur;
timer = setInterval(function(){
iCur = parseFloat(getStyle(dom,'opacity')) * 100;
speed = (target*100 - iCur)/7;
speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
if(iCur == (target*100)){
clearInterval(timer);
}else{
dom.style.opacity = (iCur + speed)/100;
}
},50)
};