HTML5 畫布 - 小球碰撞

HTML5 是全球資訊網的核心語言,屬於標準通用標記語言下超文件標記語言(HTML)的第五次重大修訂。 自 1999 年以來,HTML 4.01 已有許多變化,如今,HTML 4.01 中的一些元素已被棄用,這些元素在 HTML5 中已被刪除或重新定義。為了更好地處理當今的網際網路應用程式,HTML5 添加了許多新元素和功能,例如:圖形繪製、多媒體內容、更好的頁面結構、更好的表單處理,以及一些 API,如拖放元素、定位,包括網頁應用程式快取、儲存、網路工作者等。 標籤 描述 <canvas> 標籤定義圖形,例如圖表和其他圖像。此標籤基於 JavaScript 的繪圖 API 效果展示: 您的瀏覽器不支援 H5 程式碼部分: <canvas id="my-canvas" width="500px" height="400px" style="border:1px solid red" > 您的瀏覽器不支援 H5</canvas> <script type="text/javascript"> <!-- 取得畫布物件 --> var my\_canvas = document.getElementById("my-canvas"); <!-- 取得畫筆 --> var my\_huabi = my\_canvas.getContext("2d"); var x = 50; var y = 50; var r = 20; function deawBall(x,y){ <!-- 設定畫筆顏色 --> my\_huabi.fillStyle = "green"; <!-- 開始一個新路徑 --> my\_huabi.beginPath(); <!-- 畫出小球 --> my\_huabi.arc(x, y, r, 0, 2 \* Math.PI); <!-- 關閉路徑 --> my\_huabi.fill(); } var fx\_x = true;//當 fx_x 為 true 時,向 x 軸移動 var fx\_y = true;//當 fx_y 為 true 時,向 y 軸移動 var speen = 1; <!-- 計時器 --> window.setInterval("moveBall()", 10); function moveBall(){ <!-- 判斷目前小球的運動方向 --> if(fx\_x == true){ x += speen; if(x >= 500-r){ <!-- 當達到底部時,向上彈 --> fx\_x = false; } }else{ x -= speen; if(x <= 0+r){ <!-- 當達到頂部時,向下彈 --> fx\_x = true; } } if(fx\_y == true){ y += speen; if(y >= 400-r){ <!-- 當達到左側時,向右側彈 --> fx\_y = false; } }else{ y -= speen; if(y <= 0+r){ <!-- 當達到右側時,向左側彈 --> fx\_y = true; } } <!-- 清除畫布 重畫 --> my\_huabi.clearRect(0, 0, 500, 400); deawBall(x, y); } </script> var my\_canvas = document.getElementById("my-canvas"); var my\_huabi = my\_canvas.getContext("2d"); var x = 50; var y = 50; var r = 20; function deawBall(x,y){ my\_huabi.fillStyle = "green"; my\_huabi.beginPath(); my\_huabi.arc(x, y, r, 0, 2 \* Math.PI); my\_huabi.fill(); } var fx\_x = true;//當 fx_x 為 true 時,向 x 軸移動 var fx\_y = true;//當 fx_y 為 true 時,向 y 軸移動 var speen = 1; window.setInterval("moveBall()", 10); function moveBall(){ if(fx\_x == true){ x += speen; if(x >= 500-r){ fx\_x = false; } }else{ x -= speen; if(x <= 0+r){ fx\_x = true; } } if(fx\_y == true){ y += speen; if(y >= 400-r){ fx\_y = false; } }else{ y -= speen; if(y <= 0+r){ fx\_y = true; } } my\_huabi.clearRect(0, 0, 500, 400); deawBall(x, y); }

2017年7月18日 · 2 min · MoeJue

簡單的css3頭像旋轉與3D旋轉效果

經常會在一些網站看到評論區,評論人的頭像當滑鼠經過會360°旋轉 先來看一下效果 .tximg{ height:300px; border-radius:50%; border:2px solid green; /變化規則/ transition:all 2s; } .tximg:hover{ /* 變化動作 定義2d旋轉,參數填寫角度 */ transform:rotate(360deg); } CSS 部分 img{ height:300px; border-radius:50%; border:2px solid green; /*變化規則*/ transition:all 2s; } img:hover{ /* 變化動作 定義2d旋轉,參數填寫角度 */ transform:rotate(360deg); } HTML 部分 (很簡單,就一張圖片) <img src="http://www.52ecy.cn/log0.png"> 3D 旋轉效果 (前端顯示樣式好像還是衝突了-。-) .div{ width:300px; height:300px; border:1px solid red; /如果希望看到3D效果,需要在動的這個元素的父元素,增加一個perspective屬性/ perspective:300px;/3D 元素距視圖的距離,一般與圖片的高度一致效果最佳/ } .img{ width:300px; height:300px; border:1px solid red; /變化規則/ /設定旋轉元素的原始點位置/ transform-origin:bottom; transition:all 2s; } .img:hover{ /變化動作/ transform:rotateX(60deg); } ...

2017年7月10日 · 1 min · MoeJue

用CSS3繪製iPhone手機

先上效果圖,先睹為快。(這絕對不是一張圖片。嗯這話怎麼怪怪的) 不要問我iPhone幾,因為我也不知道,沒用過,你懂得。 css樣式部分 #phone{ width:250px; height:500px; background-color:#2E2E2E; border:10px solid #3B3B3B; margin:100px auto; border-radius:30px;/設定div元素的圓角邊框/ } #camera{ width:8px; height:8px; background-color:#1A1A1A; border-radius:50%; border:2px solid #505050; margin:10px auto;/距離上邊距10px 左右居中/ } #receiver{ width:80px; height:8px; border:2px solid #505050; margin:10px auto; border-radius:10px; background-color:#1A1A1A; } #screen{ width:225px; height:385px; background-color:#0A0A0A; border:3px solid #1C1C1C; margin:10px auto; } #btn{ width:40px; height:40px; background:#1A1A1A; border-radius:50%; /當寬高相同時,則為圓/ margin:10px auto; } /:before 選擇器在被選元素的內容前面插入內容。/ #btn:before{ width:22px; height:22px; border:2px solid white; border-radius:30%; content:""; /即使插入的內容為空也需要寫,否則不顯示/ display:inline-block; margin-top:7px; margin-left:7px; } HTML部分 晚些我又加了點玩意上去 點擊Home鍵可以讓手機亮屏,5秒後又再次熄滅螢幕 ...

2017年7月3日 · 1 min · MoeJue