麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > HTML > 正文

用canvas做一個DVD待機動畫的實現(xiàn)代碼

2024-08-26 00:21:23
字體:
供稿:網(wǎng)友

免責(zé)聲明

不是打算教 canvas,只是覺得好玩就簡單看了一下。

意思就是做得略粗糙,別噴我。。

canvas,待機動畫,代碼

效果

幀數(shù)略低,實際當(dāng)然流暢得多。

canvas,待機動畫,代碼

實現(xiàn) HTML

<!DOCTYPE html><head>  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">  <style>    * {margin: 0;padding: 0;}    body {background-color: lightblue;}    #canvas {background-color: black;width: 100vw;}  </style></head><body>  <canvas id="canvas"></canvas>  <script>/* 見下 */</script></body>

JS

window.onload = function () {  let    // 畫布    ctx = document.getElementById('canvas').getContext('2d'),    // 畫布大小    canvas_width = document.getElementById('canvas').width,    canvas_height = document.getElementById('canvas').height,    // DVD 圖標(biāo)的文本顏色、字體、背景色    text_color = ['green', 'blue', 'purple', 'yellow', 'white', 'yellow', 'white'],    text_font = 'italic bold 50px yahei',    background_color = ['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],    // 背景矩形的尺寸    background_width = 110,    background_height = 50,    // 向矩形添加文本時,高度有點偏差    fix_height = 7,    // 速度,每次重繪移動 0.5 px    speed_x = 0.5,    speed_y = 0.5,    // 移動方向,初始為 'r-b' 右下    direction = 'r-b',    // 圖標(biāo) x 和 y 坐標(biāo),初始為 0    position_x = 0,    position_y = 0,    // 碰撞次數(shù),用來計算背景和文本顏色    count = 0  dvd()  function dvd() {    // 移動方向    switch (direction) {      // 右下      case 'r-b':        position_x += speed_x        position_y += speed_y        break      // 右上      case 'r-t':        position_x += speed_x        position_y -= speed_y        break      // 左下      case 'l-b':        position_x -= speed_x        position_y += speed_y        break      // 左上      case 'l-t':        position_x -= speed_x        position_y -= speed_y        break    }    // 清空畫布    ctx.clearRect(0, 0, canvas_width, canvas_height)    // 重繪    ctx.fillRect(position_x, position_y, background_width, background_height)    // 碰撞檢測    // 底    if (position_y + background_height >= canvas_height) {      direction = direction.replace('b', 't')      // 碰撞次數(shù)統(tǒng)計      count += 1    }    // 右    if (position_x + background_width >= canvas_width) {      direction = direction.replace('r', 'l')      count += 1    }    // 左    if (position_x < 0) {      direction = direction.replace('l', 'r')      count += 1    }    // 上    if (position_y < 0) {      direction = direction.replace('t', 'b')      count += 1    }    // 文本    ctx.font = text_font    ctx.fillStyle = text_color[count % 7]    ctx.fillText("DVD", position_x, position_y + background_height - fix_height)    // 背景色    ctx.fillStyle = background_color[count % 7]    // 開始動畫    window.requestAnimationFrame(dvd)  }}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到HTML教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 成人免费av在线播放 | 精品国产一区二 | 久久久久九九九女人毛片 | 美国人成人在线视频 | 国产精品成人久久久久a级 av电影在线免费 | 国产精品成人av片免费看最爱 | 毛片天天看| 黄色av网站在线观看 | 国产精品久久久久久久四虎电影 | 黄色一级片在线免费观看 | 久久艳片 | 久久久久亚洲精品国产 | 国产亚洲精品成人a | 中文字幕在线亚洲精品 | 亚洲午夜视频在线 | 亚洲精品午夜国产va久久成人 | 欧美日本免费一区二区三区 | 二级大黄大片高清在线视频 | 国产精品久久久久久久av | 久久久久免费电影 | 国产精品99久久久久久宅女 | 双性精h调教灌尿打屁股的文案 | 青青草华人在线 | 欧美乱淫 | 久久激情小视频 | 国产在线地址 | av免播放 | 成人男女啪啪免费观看网站四虎 | 日本网站在线播放 | 视频一区 在线 | 精品久久久久久久久久中文字幕 | 精品久久中文网址 | 看一级毛片 | 一级黄片毛片免费看 | 91av亚洲| www久久久久久 | 福利在线免费视频 | 欧美亚洲黄色片 | 亚洲精久 | 欧美91看片特黄aaaa | 日本免费中文字幕 |