HTML5 用动画的表现形式装载图像

2020-04-20 17:14:13易采站长站整理

示例使用HTML5的canvas标签和Javascript脚本,简单的编写了装载图片效果,请使用支持HTML5的浏览器预览效果:
下图为以逐渐横向栅格的效果图

html部分:

XML/HTML Code复制内容到剪贴板

<!DOCTYPE html>    
<html lang="en">    
<head>    
<meta charset="UTF-8">    
<title>html5 装载图片</title>    
</head>    
<body>    
<button onclick="drawImg1()">从左到右</button>    
<button onclick="drawImg2()">从中央到左右两边</button>    
<button onclick="drawImg3()">以逐渐横向栅格</button>    
<hr/>    
<canvas class="canvas" id="canvas" width="600" height="300"></canvas>    
</body>    
</html>   

JavaScript部分:
 

XML/HTML Code复制内容到剪贴板

 //初始化    
var canvas = document.getElementById("canvas"),    
context = canvas.getContext("2d"),    
image = new Image();    
image.src = "img/test.jpg";    
//从左到右加载方法    
function drawImg1(){    
var drawWidth = 0,    
interval = setInterval(function(){    
context.drawImage(image, 0, 0, drawWidth, image.height, 0, 0, drawWidth, image.height);    
drawWidth += 20;    
if(drawWidth > canvas.width) clearInterval(interval);    
},100);    
}    
//从中央向左右两边拉开加载方法    
function drawImg2(){    
var drawWidth = 0,    
drawLeft = canvas.width/2,    
interval = setInterval(function(){    
context.drawImage(image, drawLeft, 0, drawWidth, image.height, drawLeft, 0, drawWidth, image.height);    
drawWidth += 20;    
drawLeft -= 10;    
if(drawLeft < 0) clearInterval(interval);