科学教育

搜索
查看: 634|回复: 3
打印 上一主题 下一主题

刘景菡贪吃蛇

[复制链接]

1

主题

6

帖子

29

积分

新手上路

Rank: 1

积分
29
跳转到指定楼层
楼主
发表于 2025-10-11 14:57:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
帮我生产一个贪吃蛇的网页代码

回复

使用道具 举报

0

主题

1145

帖子

1715

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1715
沙发
发表于 2025-10-11 14:57:39 | 只看该作者
当我们玩贪吃蛇游戏时,其实是在操作一条蛇去吃食物,并且随着吃到食物,蛇的身体会变长。下面是一个简单的贪吃蛇网页代码:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>贪吃蛇游戏</title>
  5.     <style>
  6.         #game-board {
  7.             width: 400px;
  8.             height: 400px;
  9.             border: 1px solid black;
  10.             position: relative;
  11.         }

  12.         .snake {
  13.             width: 10px;
  14.             height: 10px;
  15.             background-color: green;
  16.             position: absolute;
  17.         }

  18.         .food {
  19.             width: 10px;
  20.             height: 10px;
  21.             background-color: red;
  22.             position: absolute;
  23.         }
  24.     </style>
  25. </head>
  26. <body>
  27. <div id="game-board"></div>

  28. <script>
  29.     const gameBoard = document.getElementById('game-board');
  30.     let snakeX = 10;
  31.     let snakeY = 10;
  32.     let foodX = 200;
  33.     let foodY = 200;
  34.     let interval;

  35.     function renderSnake() {
  36.         const snakeElement = document.createElement('div');
  37.         snakeElement.style.left = snakeX + 'px';
  38.         snakeElement.style.top = snakeY + 'px';
  39.         snakeElement.classList.add('snake');
  40.         gameBoard.appendChild(snakeElement);
  41.     }

  42.     function renderFood() {
  43.         const foodElement = document.createElement('div');
  44.         foodElement.style.left = foodX + 'px';
  45.         foodElement.style.top = foodY + 'px';
  46.         foodElement.classList.add('food');
  47.         gameBoard.appendChild(foodElement);
  48.     }

  49.     function updateSnake() {
  50.         snakeX += 10;
  51.         const snakeElement = document.querySelector('.snake');
  52.         snakeElement.style.left = snakeX + 'px';
  53.     }

  54.     function checkCollision() {
  55.         if (snakeX === foodX && snakeY === foodY) {
  56.             foodX = Math.floor(Math.random() * 39) * 10;
  57.             foodY = Math.floor(Math.random() * 39) * 10;
  58.             const foodElement = document.querySelector('.food');
  59.             foodElement.style.left = foodX + 'px';
  60.             foodElement.style.top = foodY + 'px';
  61.         }
  62.     }

  63.     function gameLoop() {
  64.         interval = setInterval(() => {
  65.             updateSnake();
  66.             checkCollision();
  67.         }, 100);
  68.     }

  69.     renderSnake();
  70.     renderFood();
  71.     gameLoop();
  72. </script>
  73. </body>
  74. </html>
复制代码


这段代码创建了一个简单的贪吃蛇游戏界面,蛇用绿色方块表示,食物用红色方块表示。蛇每次移动10个像素,当蛇和食物重合时,食物会随机出现在新的位置。你可以复制这段代码到一个 HTML 文件中,然后在浏览器中打开来运行这个贪吃蛇游戏。希望能帮助到你!如果有什么问题,欢迎随时问我哦!
回复 支持 反对

使用道具 举报

1

主题

6

帖子

29

积分

新手上路

Rank: 1

积分
29
板凳
 楼主| 发表于 2025-11-5 14:55:57 | 只看该作者
<html>
<head>
    <title>贪吃蛇游戏</title>
    <style>
        #game-board {
            width: 400px;
            height: 400px;
            border: 1px solid black;
            position: relative;
        }

        .snake {
            width: 10px;
            height: 10px;
            background-color: green;
            position: absolute;
        }

        .food {
            width: 10px;
            height: 10px;
            background-color: red;
            position: absolute;
        }
    </style>
</head>
<body>
<div id="game-board"></div>

<script>
    const gameBoard = document.getElementById('game-board');
    let snakeX = 10;
    let snakeY = 10;
    let foodX = 200;
    let foodY = 200;
    let interval;

    function renderSnake() {
        const snakeElement = document.createElement('div');
        snakeElement.style.left = snakeX + 'px';
        snakeElement.style.top = snakeY + 'px';
        snakeElement.classList.add('snake');
        gameBoard.appendChild(snakeElement);
    }

    function renderFood() {
        const foodElement = document.createElement('div');
        foodElement.style.left = foodX + 'px';
        foodElement.style.top = foodY + 'px';
        foodElement.classList.add('food');
        gameBoard.appendChild(foodElement);
    }

    function updateSnake() {
        snakeX += 10;
        const snakeElement = document.querySelector('.snake');
        snakeElement.style.left = snakeX + 'px';
    }

    function checkCollision() {
        if (snakeX === foodX && snakeY === foodY) {
            foodX = Math.floor(Math.random() * 39) * 10;
            foodY = Math.floor(Math.random() * 39) * 10;
            const foodElement = document.querySelector('.food');
            foodElement.style.left = foodX + 'px';
            foodElement.style.top = foodY + 'px';
        }
    }

    function gameLoop() {
        interval = setInterval(() => {
            updateSnake();
            checkCollision();
        }, 100);
    }

    renderSnake();
    renderFood();
    gameLoop();
</script>
</body>
</html>
帮我把有颜色的代码改成蓝色
回复 支持 反对

使用道具 举报

0

主题

1145

帖子

1715

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1715
地板
发表于 2025-11-5 14:56:02 | 只看该作者
刘景菡 发表于 2025-11-05 14:55
贪吃蛇游戏
   
        #game-board {
             ...


当我们想要改变代码中的颜色时,一般是通过修改CSS样式中的`background-color`属性来实现。在这个贪吃蛇游戏代码中,我们可以将绿色改为蓝色。下面是修改后的代码:





    贪吃蛇游戏
   
        #game-board {
            width: 400px;
            height: 400px;
            border: 1px solid black;
            position: relative;
        }

        .snake {
            width: 10px;
            height: 10px;
            background-color: blue; /* 将原来的绿色改为蓝色 */
            position: absolute;
        }

        .food {
            width: 10px;
            height: 10px;
            background-color: red;
            position: absolute;
        }
   





我已经将蛇的颜色改成了蓝色,请复制以上代码到你的HTML文件中,然后在浏览器中运行,你将看到蓝色的贪吃蛇游戏界面。希望对你有帮助!如需进一步帮助,请随时告诉我!
回复 支持 反对

使用道具 举报

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

本版积分规则

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