在 photo.html 文件中添加 <canvas> 标签。 添加 <script> 标签,并在其中编写 JavaScript 代码。首先定义 anim() 函数,在其中实现动画效果,即使用 requestAnimationFrame() 方法来定时运行动画,累计旋转角度和缩放系数,再分别调用 rotate() 方法和scale() 方法实现图像的旋转和缩放。然后在画布上加载图像,使用translate() 方法平移旋转原点的位置,最后调用 anim() 函数。
时间: 2024-03-19 09:44:45 浏览: 73
HTML页面中添加Canvas标签示例
好的,以下是在 photo.html 文件中添加 <canvas> 标签,并使用 JavaScript 实现动画效果的代码:
```
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Photo Animation</title>
</head>
<body>
<canvas id="myCanvas" width="500" height="500"></canvas>
<script>
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var img = new Image();
img.src = "myphoto.jpg";
var angle = 0;
var scale = 1;
function anim() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
angle += Math.PI / 180;
scale += 0.01;
ctx.translate(canvas.width / 2, canvas.height / 2);
ctx.rotate(angle);
ctx.scale(scale, scale);
ctx.drawImage(img, -img.width / 2, -img.height / 2);
requestAnimationFrame(anim);
}
img.onload = function() {
anim();
};
</script>
</body>
</html>
```
在上面的代码中,我们首先获取了 <canvas> 元素和 2D 上下文。然后创建了一个新的 Image 对象并指定了图片地址。接着定义了 angle 和 scale 变量,并编写了 anim() 函数。在 anim() 函数中,我们首先使用 clearRect() 方法清除画布。然后累加 angle 和 scale 变量,并使用 translate() 方法将旋转中心点移动到画布中心位置,再使用 rotate() 方法和 scale() 方法分别实现图像的旋转和缩放。最后使用 drawImage() 方法在画布上加载图像。在 anim() 函数的最后,我们使用 requestAnimationFrame() 方法来定时运行动画。
最后,我们在图片加载完成后调用 anim() 函数,实现动画效果。
阅读全文