canvas鼠标点击生成涟漪水波波纹动画效果代码

代码语言:html

所属分类:动画

代码描述:canvas鼠标点击生成涟漪水波波纹动画效果代码

代码标签: canvas 鼠标 点击 涟漪 水波

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!doctype html> 
<html lang="en">
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">

		<style type="text/css">
			body { background-color: #000000; margin: 0px; overflow: hidden; }
			#info { position: absolute; top: 0px; width: 100%; color: #00b0b0; padding: 5px; font-family:Monospace; font-size:13px; text-align:center; }
		</style>
	</head>
	<body>



		<div id="container"></div>
		<div id="info">Click/Touch to draw waves. Press any key for raindrop.</div>
		
		<script type="text/javascript">

			var QUALITY = 4,
			WIDTH = Math.floor(window.innerWidth / QUALITY), HEIGHT = Math.floor(window.innerHeight / QUALITY), SIZE = WIDTH * HEIGHT,
			
			context, image, data,
			buffer1, buffer2, tempbuffer,

			isUserInteracting, pointers;

			init();
			setInterval(loop, 1000 / 60);

			function init() {

				var container, canvas;
				
				container = document.getElementById('container');

				canvas = document.createElement("canvas");
				canvas.width = WIDTH;
				canvas.height = HEIGHT;
				canvas.style.width = window.innerWidth + "px";
				canvas.style.height = window.innerHeight + "px";
				container.appendChild(canvas);

				context = canvas.getContext("2d");
				context.fillStyle = "rgb(0, 0, 0)";
				context.fillRect (0, 0, WIDTH, HEIGHT);
				image = context.getImageData(0, 0, WIDTH, HEIGHT);
				data = image.data;

				buffer1 = [];
				buffer2 = [];
				
				for (var i = 0; i < SIZE; i ++) {

					buffer1[i] = 0;
					buffer2[i] = i > WIDTH && i < SIZE - WIDTH && Math.random() > 0.995 ? 255 : 0;
				}
				
				document.addEventListener('mousedown', onDocumentMouseDown, false);
				document.addEventListener('mousemove', onDocumentMouseMove, false);
				document.addEventListener('mouseup', onDocumentMouseUp, false);
				document.addEventListener('mouseout', onDocumentMouseOut, false);				
				
				document.addEventListener('touchstart', onDocumentTouchStart, false);
				document.addEventListener('touchmove', onDocumentTouchMove, false);
				document.addEventLis.........完整代码请登录后点击上方下载按钮下载查看

网友评论0