就是有点晃眼!
随机截取图片三张.如下:
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/jquery-3.1.0.min.js" type="text/javascript" charset="utf-8"></script>
<style type="text/css">
#btn {
position: relative;
}
table {
text-align: center;
border-collapse: collapse;
border: solid 2px;
}
button {
width: 495px;
font-size: 15px;
}
</style>
</head>
<center>
<body>
<table border="" cellspacing="" cellpadding="">
<tr>
<th><canvas id="cav" width="500" height="500"></canvas></th>
</tr>
<tr>
<td>
<div id="">
<button id="btn_start" onclick="">开始</button>
</div>
</td>
</tr>
<tr>
<td>
<div id="">
<button id="btn_stop" onclick="">暂停</button>
</div>
</td>
</tr>
</table>
</body>
</center>
<script type="text/javascript">
var cav = document.getElementById("cav");
var context = cav.getContext("2d");
var cavsize = 500;
var num = 0.1; //间距;
var addnum = 0.0005; //每次间距增加量;
var posit = 2; //
var numup = true; //是否处于间距增加阶段;
var time = 100; //定时器定时;
var inter;
document.getElementById("btn_start").onclick = function() {
clearInterval(inter);
inter = setInterval("draw()", time);
}
$("#btn_stop").click(function() {
clearInterval(inter);
})
function draw() {
context.beginPath();
//间距扩大;
if(numup && num < 2) {
num = num + addnum;
//从中心往外作图;
for(var r = 0; r < cavsize / 2; r = r + num) {
context.arc(cavsize / 2, cavsize / 2, r, posit * r * Math.PI, (posit * r + num) * Math.PI);
}
redraw();
//设置边界,用于反复,不会停下;
if(num >= 2) {
numup = false;
randomchange();
}
}
//间距缩小;
else if(!numup && num > 0) {
num = num - addnum;
for(var r = 0; r < cavsize / 2; r = r + num) {
context.arc(cavsize / 2, cavsize / 2, r, posit * r * Math.PI, (posit * r + num) * Math.PI);
}
redraw();
if(num <= 0.1) {
numup = true;
num = Math.random() * 0.8 + 0.1;
randomchange();
}
}
}
//清空重画;
function redraw() {
context.clearRect(0, 0, cavsize, cavsize);
context.stroke();
}
//随机增加量,调节计时器时间间隔;
function randomchange() {
addnum = Math.random() * 0.002 + 0.0005;
time = 100 * addnum * 1000;
}
</script>
</html>
- 大小: 336.4 KB
- 大小: 436.8 KB
- 大小: 343.2 KB
分享到:
相关推荐
首先,要绘制渐变效果,我们需要一个canvas元素。在HTML5中,<canvas>标签被用来定义一个画布,JavaScript可以用来在上面绘制图形。通过在HTML文件中添加<canvas>标签,并设置适当的宽度和高度属性,我们就可以创建...
为了增加真实感,我们可以调整线条的宽度和颜色,以及添加渐变或图案填充。 接下来,实现动画效果的关键在于更新和重绘每一帧。我们可以定义一个函数,该函数会不断地改变沙丁鱼的位置、方向和速度,模拟它们游动的...
"js+html5实现canvas绘制椭圆形图案的方法" 本文主要介绍了使用 js+html5 实现 canvas 绘制椭圆形图案的方法,涉及 html5 图形绘制的基础技巧。下面是实现椭圆形图案的详细步骤: 1. 首先,需要创建两个 canvas ...
在“html5 Canvas绘制2D背景2”这个主题中,我们将深入探讨如何利用Canvas API来绘制复杂的2D背景。Canvas API提供了多种方法来绘制和操作图形,包括直线、曲线、圆形、矩形、文本以及图像等。以下是一些关键知识点...
在这个“HTML 5 Canvas绘制2D背景1”的主题中,我们将深入探讨如何使用Canvas API来创建吸引人的背景图案。 首先,让我们了解一下HTML5 Canvas的基本结构。Canvas是一个HTML元素,通过JavaScript来控制其内容。在...
"html5 Canvas绘制2D背景 7款"这个主题意味着我们将探讨七种不同的方法或者样式,利用Canvas API来创建吸引人的背景效果。Canvas API提供了丰富的绘图命令,使得开发者可以实现各种复杂的视觉效果。 首先,我们要...
本项目“微信小程序-小程序canvas绘制高铁线路图”(wxapp-Gline)就是这样一个示例,展示了如何利用canvas在小程序中绘制出逼真的高铁线路图。 首先,canvas是HTML5引入的一个绘图元素,它提供了一个2D渲染上下文...
这个"html5 canvas绘制曲线动画特效源码....6. Canvas上的颜色处理,如渐变、阴影和图案 通过学习和分析这个源码,开发者不仅可以了解HTML5 Canvas的基础,还能掌握曲线动画的制作技巧,进一步提升Web前端开发能力。
这个"html5 canvas绘制七巧板特效"项目,很可能是通过JavaScript和HTML5 Canvas API来实现七巧板的动态展示和交互效果。 首先,我们要理解HTML5 Canvas的基本用法。Canvas是一个二维绘图上下文,通过JavaScript来...
在这个“HTML5 canvas绘制七巧板代码”项目中,开发者可以学习如何利用JavaScript和HTML5 canvas来实现一个交互式的七巧板游戏。 七巧板是一种古老的益智玩具,由七块不同形状的木板组成,可以拼出各种不同的图案。...
为了模拟樱花花瓣的质感,可能会使用渐变色或图案。 4. **动画**:利用`requestAnimationFrame`创建动画效果,不断地清除画布并重新绘制,使樱花瓣看起来在飘落。每个花瓣可能有独立的位置、速度和旋转角度,随着...
颜色处理方面,`fillStyle`和`strokeStyle`分别用于设置填充色和描边色,可以是简单的颜色字符串(如"#FF0000"代表红色),也可以是渐变或图案。为了创建灰太狼的特征,可能还需要使用`drawImage()`方法加载并绘制...
HTML5 Canvas可以利用`fillStyle`属性设置填充颜色,而为了模拟火焰的效果,开发者可能需要使用渐变(`createLinearGradient()`或`createRadialGradient()`)或者图案(`createPattern()`)来创建从暖色调到冷色调的...
根据文件信息,以下是对“js+html5实现canvas绘制椭圆形图案的方法”知识点的详细介绍: HTML5 Canvas是Web前端开发中用于图形绘制的一种强大工具,它允许用户在网页上绘制图形、图像和其他视觉效果。HTML5 Canvas...
此外,Canvas API还支持更多的图形绘制功能,比如线性渐变、径向渐变、图案填充等。例如,创建一个线性渐变: ```javascript var gradient = ctx.createLinearGradient(0, 0, 200, 0); gradient.addColorStop(0, "#...
通过理解 `createRadialGradient` 和 `addColorStop` 方法,我们可以自定义复杂的渐变图案,为网页增添动态和美感。同时,对于初学者来说,需要注意Canvas API 的正确使用,避免如误将方法赋值给属性这样的常见错误...
这个压缩包“html5 Canvas绘制炫酷闪电动画特效代码.zip”显然是一个包含HTML5 Canvas动画效果的示例代码集合。通过学习和理解这些代码,我们可以深入掌握Canvas的绘图原理和动画制作技巧。 首先,Canvas API提供了...
本项目聚焦于“canvas笔刷可绘制”,主要涉及的是如何使用Canvas API来自定义笔刷,调整颜色、大小和图案,以创建出独特且个性化的绘图体验。这个项目基于Vue框架,提供了一套JavaScript代码实现自定义笔刷功能。 ...
开发者可以调用Canvas的绘图方法,如`fillRect()`, `strokeRect()`, `arc()`, `lineTo()`等,来绘制矩形、圆形、线条和其他形状,并通过颜色、渐变或图案填充它们。 在这个特效中,"模糊圆点粒子"的实现关键在于...