-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathscript.js
More file actions
44 lines (31 loc) · 1.07 KB
/
Copy pathscript.js
File metadata and controls
44 lines (31 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const INVERT_PROBABILITY = 0.5
// Track if mouse is being pressed
let isMouseDown = false;
// Add mouse down/up listeners to document
document.addEventListener('mousedown', () => isMouseDown = true);
document.addEventListener('mouseup', () => isMouseDown = false);
// Add click handler to create the grid
document.addEventListener('DOMContentLoaded', () => {
// Get references to our elements
const startButton = document.getElementById('start');
const grid = document.getElementById('grid');
// Clear any existing grid first
grid.innerHTML = '';
// Create 100 cells (10x10)
for (let i = 0; i < 100; i++) {
const cell = document.createElement('div');
cell.className = 'cell';
// Handle both click and drag events
cell.addEventListener('mousedown', () => {
cell.classList.toggle('black');
});
cell.addEventListener('mouseenter', () => {
if (isMouseDown) {
cell.classList.toggle('black');
}
});
grid.appendChild(cell);
}
// Hide the start button after grid is created
startButton.style.display = 'none';
});