canvas實現(xiàn)的加載效果

以前在瀏覽文章時,看到過一個Android的加載效果,覺得挺好看的,于是自己就模仿了一個。
github地址:https://github.com/lzuntalented/lzLoading

運行效果圖

分析下這個效果:
1.可以把這四個方塊標號
2.這個運動效果其實只用分解為兩段動畫,一段是上下移動,一段是左右移動。

/*核心代碼*/
/*分析動畫,其實動畫只有兩次的執(zhí)行*/
            var for_index = 1;//記錄當前執(zhí)行動畫的序列
            var interval = setInterval(function(){
                if(for_index == 1){
                    if(squre4.x == origin_squre.x - step * 2){
                        for_index = 2;
                    }else{
                        squre2.x -= 2;
                        squre2.y += 1;
                        
                        squre4.x += 2;
                        squre4.y -= 1;
                    }
                }else if(for_index == 2){
                    if(squre4.x == origin_squre.x){
                        for_index = 1;
                        
                        /*重置方塊位置信息到初始值*/
                        init_squre(origin_squre.x,origin_squre.y);
                        
                    }else{
                        squre3.x -= 2;
                        squre3.y -= 1;
                        
                        squre2.x -= 2;
                        squre2.y -= 1;
                        
                        squre4.x += 2;
                        squre4.y += 1;
                        
                        squre1.x += 2;
                        squre1.y += 1;
                    }
                }
                ctx.clearRect(0,0,canvas.width,canvas.height);
                /*重繪方塊*/
                if(for_index == 1 || for_index == 2){
                    draw_squre(squre4);
                    draw_squre(squre1);
                    draw_squre(squre3);
                    draw_squre(squre2);
                }
                
                /*重繪陰影*/
                get_shaow_pos();
                for(var i in shaow_begin){
                    draw_shaow(shaow_begin[i]);
                }
            },1000 / 24);

由于在高分屏下繪制有點模糊,于是引入了hidpi-canvas.js

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容