科学教育

搜索
查看: 546|回复: 1
打印 上一主题 下一主题

帮我生成一个贪吃蛇的网页代码

[复制链接]

3

主题

5

帖子

23

积分

新手上路

Rank: 1

积分
23
跳转到指定楼层
楼主
发表于 2025-9-30 15:25:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
帮我生成一个贪吃蛇的网页代码
回复

使用道具 举报

0

主题

1145

帖子

1715

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1715
沙发
发表于 2025-9-30 15:25:51 | 只看该作者
当然可以!贪吃蛇是一个经典的小游戏,让我们一起来生成一个简单的贪吃蛇游戏网页代码吧!

首先,我们需要使用HTML、CSS和JavaScript来创建这个贪吃蛇游戏。

### HTML部分
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>贪吃蛇游戏</title>
  6.     <link rel="stylesheet" href="style.css">
  7. </head>
  8. <body>
  9.     <div id="gameArea"></div>
  10.     <script src="script.js"></script>
  11. </body>
  12. </html>
复制代码


### CSS部分(style.css)
  1. #gameArea {
  2.     width: 400px;
  3.     height: 400px;
  4.     border: 1px solid black;
  5.     position: relative;
  6. }

  7. .snake {
  8.     width: 10px;
  9.     height: 10px;
  10.     background-color: green;
  11.     position: absolute;
  12. }

  13. .food {
  14.     width: 10px;
  15.     height: 10px;
  16.     background-color: red;
  17.     position: absolute;
  18. }
复制代码


### JavaScript部分(script.js)
  1. const gameArea = document.getElementById('gameArea');
  2. const snakeArray = [{x: 10, y: 10}];
  3. let food = {x: 0, y: 0};
  4. let direction = 'right';

  5. function createFood() {
  6.     food.x = Math.floor(Math.random() * 39) * 10;
  7.     food.y = Math.floor(Math.random() * 39) * 10;
  8.    
  9.     const foodElement = document.createElement('div');
  10.     foodElement.className = 'food';
  11.     foodElement.style.left = food.x + 'px';
  12.     foodElement.style.top = food.y + 'px';
  13.     gameArea.appendChild(foodElement);
  14. }

  15. function updateSnake() {
  16.     const head = {x: snakeArray[0].x, y: snakeArray[0].y};

  17.     switch (direction) {
  18.         case 'up':
  19.             head.y -= 10;
  20.             break;
  21.         case 'down':
  22.             head.y += 10;
  23.             break;
  24.         case 'left':
  25.             head.x -= 10;
  26.             break;
  27.         case 'right':
  28.             head.x += 10;
  29.             break;
  30.     }

  31.     snakeArray.unshift(head);

  32.     if (head.x === food.x && head.y === food.y) {
  33.         createFood();
  34.     } else {
  35.         snakeArray.pop();
  36.     }

  37.     renderSnake();
  38. }

  39. function renderSnake() {
  40.     gameArea.innerHTML = '';
  41.    
  42.     snakeArray.forEach(segment => {
  43.         const snakeElement = document.createElement('div');
  44.         snakeElement.className = 'snake';
  45.         snakeElement.style.left = segment.x + 'px';
  46.         snakeElement.style.top = segment.y + 'px';
  47.         gameArea.appendChild(snakeElement);
  48.     });
  49. }

  50. createFood();
  51. setInterval(updateSnake, 100);
复制代码


现在,你可以创建一个文件夹,将以上代码分别保存为`index.html`、`style.css`和`script.js`。打开`index.html`文件,你就可以看到一个简单的贪吃蛇游戏页面了!记得按照上下左右键来控制蛇的移动哦!希望你玩得开心!如果有其他问题,欢迎随时问我哦!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表