一个翻翻的小游戏。HTML式。

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
    <style>
    	#grid{
    		width:316px;
    		height: 316px;
    		 background-color: #00BFFF;    		
    	}
        .cell {
            width: 60px;
            height: 60px;
            border: 1px solid black;
            float: left;           
        }
        .red {
            background-color: red;
        }
        .black {
            background-color: black;
        }
    </style>
</head>
<body>
    <div id="grid"></div>
    <script>
        var grid = [];
        var size = 5;
        var gridElement = document.getElementById('grid');

        for (var i = 0; i < size; i++) {
            var row = [];
            for (var j = 0; j < size; j++) {
                var cell = document.createElement('div');
                cell.className = 'cell red';
                cell.onclick = (function(i, j) {
                    return function() {
                        toggleColor(i, j);
                    }
                })(i, j);
                gridElement.appendChild(cell);
                row.push(cell);
            }
            grid.push(row);
        }

        grid[2][2].className = 'cell black';

        function toggleColor(i, j) {
            var directions = [[-1, 0], [1, 0], [0, -1], [0, 1]];
            for (var k = 0; k < directions.length; k++) {
                var ni = i + directions[k][0];
                var nj = j + directions[k][1];
                if (ni >= 0 && ni < size && nj >= 0 && nj < size) {
                    var cell = grid[ni][nj];
                    cell.className = cell.className === 'cell red' ? 'cell black' : 'cell red';
                }
            }
        }
    </script>
</body>
</html>
相关推荐
C澒18 分钟前
微前端容器标准化:容器标准化能力的 “配置化+ 插件化”
前端·架构
TU不秃头3 小时前
JS逆向实战五:某海关公示平台分析(瑞数加密)
javascript·爬虫
anOnion6 小时前
构建无障碍组件之Carousel Pattern
前端·html·交互设计
ssshooter6 小时前
Tauri 2 iOS 开发避坑指南:文件保存、Dialog 和 Documents 目录的那些坑
前端·后端·ios
Можно7 小时前
深入理解 ES6 Proxy:与 Object.defineProperty 的全面对比
前端·javascript·vue.js
Birdy_x7 小时前
接口自动化项目实战(1):requests请求封装
开发语言·前端·python
天天向上10248 小时前
vue el-table实现拖拽排序
前端·javascript·vue.js
西西学代码9 小时前
Flutter---回调函数
开发语言·javascript·flutter
卷帘依旧9 小时前
JavaScript 闭包经典问题:为什么输出 10 次 i=10
javascript
柳杉9 小时前
Three.js × Blender:从建模到 Web 3D 的完整工作流深度解析
前端·javascript·数据可视化