沒有寫onmouseout事件,但是鼠標(biāo)移走時(shí)執(zhí)行了,求解
for(var i=0;i<aList.length;i++)
{
aList[i].onmouseover=function(){
var t=this.getElementsByTagName("i")[0];
startMove(t,{opacity:0,top:-5},function(){
t.style.top=10+"px";
startMove(t,{opacity:100,top:5});
});
}
}
我的代碼是這樣的,鼠標(biāo)滑過執(zhí)行效果,這屬于正常現(xiàn)象。但是出了問題,為什么鼠標(biāo)移走時(shí)也執(zhí)行動(dòng)畫,我沒有移走的函數(shù)啊。
2016-06-27
別用onmouseover ? 你該用onmouseenter試試
2016-05-14
function getStyle(obj,attr){
if(obj.currentStyle)
{
return obj.currentStyle[attr];
}
else{
return getComputedStyle(obj,false)[attr];
}
}
function startMove(obj,json,fn){
clearInterval(obj.timer);
? ? obj.timer=setInterval(function(){
? ? var flag=true;
? ?
? ? for(var attr in json)
? ? {
? ? var cur=0;
? ?
? ? if(attr=="opacity")
? ? { ??
? ? cur=Math.round(parseFloat(getStyle(obj,attr))*100);
? ? }
? ? else
? ? { ??
? ? cur=parseInt(getStyle(obj,attr));
? ?
? ? }
? ?
? ? var speed=(json[attr]-cur)/8;
? ? speed=speed>0?Math.ceil(speed):Math.floor(speed);
? ?
? ? if(cur!=json[attr])
? ? {
? ? flag=false;
? ? }
? ? if(attr=="opacity")
? ? { ??
? ? obj.style.filter='alpha(opacity:'+(cur+speed)+')';
? ? obj.style.opacity=(cur+speed)/100;
? ? }
? ? else
? ? {
? ? obj.style[attr]=cur+speed+"px";
? ? }
? ? }
? ? if(flag)
? ? {
? ? clearInterval(obj.timer);
? ? if(fn)
? ? fn();
? ? }
? ? },20);
}