第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

有什么辦法能簡化這個代碼嗎?

<!DOCTYPE?html>
<html?lang="en">

<head>
<meta?charset="UTF-8">
<meta?name="viewport"?content="width=device-width,?initial-scale=1.0">
<meta?http-equiv="X-UA-Compatible"?content="ie=edge">
<title>more</title>
</head>
<style>
*?{
margin:?0;
padding:?0;
}

ul,
li?{
list-style:?none;
}

ul?li?{
width:?200px;
height:?100px;
background:?yellow;
margin-bottom:?20px;
}


div?{
width:?200px;
height:?200px;
background:?red;
margin:?20px;
float:?left;
/*IE下的濾鏡*/
filter:?alpha(opacity:30);
/*其它瀏覽器透明度*/
opacity:?0.3;
}
</style>

<body>
<ul>
<li></li>
<li></li>
<li></li>
</ul>

<div></div>
<div></div>
<div></div>
<div></div>
</body>
<script>
window.onload?=?function?()?{

//只要是多物體運動,所有的東西都不能公用

var?aLi?=?document.getElementsByTagName('li'),
aDiv?=?document.getElementsByTagName('div');
//?li的變寬動畫
for?(var?i?=?0;?i?<?aLi.length;?i++)?{
//?防止全局定時器變量污染?互相爭用定時器?給每一個Li一個定時器
aLi[i].timer?=?null;
aLi[i].onmouseover?=?function?()?{
startMove(this,?400);
}
aLi[i].onmouseout?=?function?()?{
startMove(this,?200);
}
}
//?div的透明度
for?(var?j?=?0;?j?<?aDiv.length;?j++)?{
aDiv[j].timer?=?null;
//?透明度也要防止污染
aDiv[j].alpha?=?30;
aDiv[j].onmouseover?=?function?()?{
startChange(this,?100);
}
aDiv[j].onmouseout?=?function?()?{
startChange(this,?30);
}
}
}

//?var?timer?=?null;
//?變寬動畫方法?傳入兩個函數(shù)?(this-obj?,?iTarget)
function?startMove(obj,?iTarget)?{
clearInterval(obj.timer);
obj.timer?=?setInterval(function?()?{
//?判斷速度值
var?speed?=?(iTarget?-?obj.offsetWidth)?/?10;
speed?=?speed?>?0???Math.ceil(speed)?:?Math.floor(speed);
if?(obj.offsetWidth?==?iTarget)?{
clearInterval(obj.timer);
}?else?{
obj.style.width?=?obj.offsetWidth?+?speed?+?'px';
}
},?30);
}

//?透明度動畫方法
function?startChange(obj,?iTarget)?{
clearInterval(obj.timer);
obj.timer?=?setInterval(function?()?{
//?判斷速度值
var?speed?=?0;
var?speed?=?0;
//?判斷速度的值
if?(obj.alpha?>?iTarget)?{
speed?=?-10;
}?else?{
speed?=?10;
}
if?(obj.alpha?==?iTarget)?{
clearInterval(obj.timer);
}?else?{
//?給透明值賦值
obj.alpha?=?obj.alpha?+?speed;
//?IE下濾鏡
obj.style.filter?=?'alpha(opacity:"+obj.alpha+")';
//?其它瀏覽器透明度
obj.style.opacity?=?obj.alpha?/?100;
}
},?30);

}
</script>

</html>


正在回答

1 回答

可以簡化,將變化方法封裝一下,后面會有講到。大概的意思就是說將 當前對象,需要改變的樣式,目標值這些都傳過去就可以了

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
JS動畫效果
  • 參與學(xué)習(xí)       113920    人
  • 解答問題       1487    個

通過本課程JS動畫的學(xué)習(xí),從簡單動畫開始,逐步深入各種動畫框架封裝

進入課程

有什么辦法能簡化這個代碼嗎?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號