刮刮卡是一种常见的抽奖方式,用户通过刮开涂层来查看是否中奖,这里给你一个简单的HTML和JavaScript实现的刮刮卡源码示例:
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF8"> <meta name="viewport" content="width=devicewidth, initialscale=1.0"> <title>刮刮卡示例</title> <style> #scratchCard { width: 200px; height: 200px; backgroundimage: url('scratchCard.png'); position: relative; cursor: pointer; } #mask { width: 200px; height: 200px; backgroundcolor: rgba(255, 255, 255, 0.7); position: absolute; top: 0; left: 0; } </style> </head> <body> <div id="scratchCard" onmousemove="scratch(event)"></div> <canvas id="mask"></canvas> <script> const scratchCard = document.getElementById('scratchCard'); const mask = document.getElementById('mask'); const ctx = mask.getContext('2d'); let isScratching = false; function scratch(event) { if (!isScratching) { isScratching = true; } const x = event.clientX scratchCard.offsetLeft; const y = event.clientY scratchCard.offsetTop; drawMask(x, y); } function drawMask(x, y) { ctx.clearRect(0, 0, mask.width, mask.height); ctx.beginPath(); ctx.arc(x, y, 30, 0, 2 * Math.PI); ctx.fillStyle = 'rgba(255, 255, 255, 0.7)'; ctx.fill(); } </script> </body> </html>
这个示例中,我们使用了一个名为scratchCard.png
的图片作为刮刮卡的背景,你可以替换成自己的图片,当用户在刮刮卡上移动鼠标时,会触发scratch
函数,从而在画布上绘制一个半透明的圆形,模拟刮开的效果。
以上内容就是解答有关“刮刮卡 源码”的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。