亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

JavaScript動畫之多屬性鏈式動畫-變寬-變高-改變透明度

效果图
图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo</title>
    <!-- <link rel="stylesheet" type="text/css" href="../css/demo2.css">
    <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="../js/move.js"></script>
    <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="../js/demo2.js"></script> -->
    <style type="text/css">
        *{
            margin: 0;
            padding: 0;
        }
        #box{
            width: 200px;
            height: 200px;
            margin: 0 auto;
            background-color: #e52325;
            opacity: 0.3;
        }
    </style>
    <script type="text/javascript">
        window.onload=function(){
            var box = document.getElementById('box');
            box.onmouseover=function(){
                startMove(box,'width',400,function(){
                    startMove(box,'height',400,function(){
                        startMove(box,'opacity',100);
                    });
                });
            };
            box.onmouseout=function(){
                startMove(box,'opacity',30,function(){
                    startMove(box,'height',200,function(){
                        startMove(box,'width',200);
                    });
                });
            };
        };
        function startMove(obj,attr,oTarget,fn){
            var incur,flag,speed;
            clearInterval(obj.timer);
            obj.timer = setInterval(function(){
                if(attr==='opacity'){
                    incur = Math.round(parseFloat(getComputedStyle(obj,null)[attr])*100);
                }else{
                    incur = parseInt(getComputedStyle(obj,null)[attr]);
                }
                flag = oTarget - incur;
                speed = flag>0?Math.ceil(flag/10):Math.floor(flag/10);
                if(attr==='opacity'){
                    obj.style[attr] = (incur + speed)/100;
                }else{
                    obj.style[attr] = incur + speed + "px";
                }
                if(incur===oTarget){
                    clearInterval(obj.timer);
                    if(fn){
                        fn();
                    }
                }
            },30);
        }
    </script>
</head>
<body>
    <div id="box"></div>
</body>
</html>
點擊查看更多內容
2人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消