HTML5新婚、年会、各种聚会的现场抽奖活动
以下是一个简单的HTML5抽奖活动的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>抽奖活动</title>
<style>
body {
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
font-family: Arial, sans-serif;
}
#wheel {
width: 300px;
height: 300px;
image-rendering: -moz-crisp-edges;
image-rendering: -o-crisp-edges;
image-rendering: -webkit-optimize-contrast;
-ms-interpolation-mode: nearest-neighbor;
}
</style>
</head>
<body>
<canvas id="wheel" width="300" height="300"></canvas>
<script>
const canvas = document.getElementById('wheel');
const ctx = canvas.getContext('2d');
const colors = ['#e74c3c', '#f1c40f', '#1abc9c', '#3498db', '#9b59b6'];
// 绘制轮盘
function drawWheel() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
for (let i = 0; i < 5; i++) {
const angle = Math.PI * 2 / 5 * i;
const x = canvas.width / 2 + Math.cos(angle) * 150;
const y = canvas.height / 2 + Math.sin(angle) * 150;
ctx.beginPath();
ctx.fillStyle = colors[i];
ctx.arc(x, y, 50, 0, Math.PI * 2);
ctx.fill();
}
}
// 随机选择一个奖项
function pickWinner() {
const angle = Math.random() * Math.PI * 2;
const x = canvas.width / 2 + Math.cos(angle) * 150;
const y = canvas.height / 2 + Math.sin(angle) * 150;
ctx.beginPath();
ctx.fillStyle = '#fafafa';
ctx.arc(x, y, 50, 0, Math.PI * 2);
ctx.fill();
}
// 初始化轮盘
drawWheel();
// 开始抽奖
pickWinner();
</script>
</body>
</html>
这段代码创建了一个简单的HTML页面,其中包含了一个<canvas>
元素来绘制一个简单的轮盘。轮盘有五个区域,每个区域的颜色不同。页面加载时,会在轮盘上随机选择一个区域并将其绘制为白色(中间的圆圈),从而模拟抽奖动作。这个示例提供了一个基本的抽奖活动的实现,可以根据实际需求进行功能扩展和样式美化。
评论已关闭