明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

如何使用html完成流星雨的效果(代碼)

[摘要]本篇文章給大家?guī)淼膬?nèi)容是關(guān)于如何使用html實現(xiàn)流星雨的效果(代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。<!doctype html> <html><head><meta charset="GB2312" ...
本篇文章給大家?guī)淼膬?nèi)容是關(guān)于如何使用html實現(xiàn)流星雨的效果(代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

<!doctype html>
<html>
	<head>
		<meta charset="GB2312" />
		<title>流星雨</title>
		<meta name="keywords" content="關(guān)鍵詞,關(guān)鍵字">
		<meta name="description" content="描述信息">
		<style>
			body {
				margin: 0;
				overflow: hidden;
			}
		</style>
	</head>
 
	<body>
 
		<!--
			<canvas>畫布 畫板 畫畫的本子
		-->
		<canvas width=400 height=400 style="background:#000000;" id="canvas"></canvas>
 
		<!--
			javascript
			畫筆
		--> 
		<script>
					
			//獲取畫板
			//doccument 當(dāng)前文檔
			//getElement 獲取一個標(biāo)簽
			//ById 通過Id名稱的方式
			//var 聲明一片空間
			//var canvas 聲明一片空間的名字叫做canvas
			var canvas = document.getElementById("canvas");
			//獲取畫板權(quán)限 上下文
			var ctx = canvas.getContext("2d");
			//讓畫板的大小等于屏幕的大小
			/*
				思路:
					1.獲取屏幕對象
					2.獲取屏幕的尺寸
					3.屏幕的尺寸賦值給畫板
			*/
			//獲取屏幕對象
			var s = window.screen;
			//獲取屏幕的寬度和高度
			var w = s.width;
			var h = s.height;
			//設(shè)置畫板的大小
			canvas.width = w;
			canvas.height = h;
 
			//設(shè)置文字大小 
			var fontSize = 14;
			//計算一行有多少個文字 取整數(shù) 向下取整
			var clos = Math.floor(w/fontSize);
			//思考每一個字的坐標(biāo)
			//創(chuàng)建數(shù)組把clos 個 0 (y坐標(biāo)存儲起來)
			var drops = [];
			var str = "qwertyuiopasdfghjklzxcvbnm";
			//往數(shù)組里面添加 clos 個 0
			for(var i = 0;i<clos;i++) {
				drops.push(0);
			}
 
			//繪制文字
			function drawString() {
				//給矩形設(shè)置填充色
				ctx.fillStyle="rgba(0,0,0,0.05)"
				//繪制一個矩形
				ctx.fillRect(0,0,w,h);
 
				//添加文字樣式
				ctx.font = "600 "+fontSize+"px 微軟雅黑";
				//設(shè)置文字顏色
				ctx.fillStyle = "#ff2d2d";
 
				for(var i = 0;i<clos;i++) {
					//x坐標(biāo)
					var x = i*fontSize;
					//y坐標(biāo)
					var y = drops[i]*fontSize;
					//設(shè)置繪制文字
					ctx.fillText(str[Math.floor(Math.random()*str.length)],x,y);
					if(y>h&&Math.random()>0.99){
						drops[i] = 0;
					}
					drops[i]++;
				}
					
			}
			//定義一個定時器,每隔30毫秒執(zhí)行一次
			setInterval(drawString,30);
		</script>
	</body>
</html>

相關(guān)推薦:

純css3流星雨_html/css_WEB-ITnose

HTML5夢幻之旅——炫麗的流星雨效果實現(xiàn)過程_html5教程技巧

html在圖片上實現(xiàn)下雨效果_html/css_WEB-ITnose

以上就是如何使用html實現(xiàn)流星雨的效果(代碼)的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。