小編給大家分享一下JS如何實現網頁刮刮樂效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
河津網站建設公司創(chuàng)新互聯(lián)公司,河津網站設計制作,有大型網站制作公司豐富經驗。已為河津數千家提供企業(yè)網站建設服務。企業(yè)網站搭建\成都外貿網站建設公司要多少錢,請找那個售后服務好的河津做網站的公司定做!
效果如下
蓋倫.jpg
刮刮樂.gif
HTML部分
<body>  <canvas id="canvas" width="400" height="300"></canvas> </body>
沒什么要特別注意的
為了效果加了些CSS樣式
CSS部分
<style type="text/css"> *{ margin: 0; padding: 0; } img{ width: 400px; height: 300px; left: 200px; position: absolute; z-index: -1; } canvas{ margin-left:200px; } </style>
注意
1.為了清除瀏覽器自帶效果加了
*{ margin: 0; padding: 0; }
2.img需要在灰布下面,加了z-index;
3.圖片絕對定位
js部分
分析下邏輯
1.鼠標按下移動相應區(qū)域刮開
2.鼠標抬起改變鼠標位置不接著刮開
js代碼
<script type="text/javascript"> var canvas = document.getElementById("canvas"); var context = canvas.getContext('2d'); //畫蒙布 context.beginPath(); context.fillStyle= 'grey' context.fillRect(0,0,400,300); //鼠標按下開刮 canvas.onmousedown=function(){ canvas.onmousemove = function(){ //獲取鼠標坐標 var x = event.clientX; var y = event.clientY; //destination-out 顯示原來的不在后來區(qū)域的部分 context.globalCompositeOperation = "destination-out"; context.beginPath(); context.arc(x-200,y,30,0,Math.PI*2); context.fill(); } } //鼠標抬起不刮開 canvas.onmouseup=function(){ canvas.onmousemove = function(){ } } </script>
需要注意的是
1.圖片和畫布左移了200px,所以圓的起點坐標相對于獲取位置減了200px;
2.globalCompositeOperation是畫布的一個功能作用是設置或返回如何將一個源(新的)圖像繪制到目標(已有)的圖像上,還有其余10種寫法
以上是“JS如何實現網頁刮刮樂效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
標題名稱:JS如何實現網頁刮刮樂效果
分享URL:http://jinyejixie.com/article20/psehjo.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、網站維護、定制網站、關鍵詞優(yōu)化、移動網站建設、品牌網站制作
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)