-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js.off
More file actions
45 lines (36 loc) · 1.7 KB
/
script.js.off
File metadata and controls
45 lines (36 loc) · 1.7 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
44
45
const cellColors = JSON.parse(localStorage.getItem('cellColors')) || Array(100).fill('#FFFFFF');
let acceptedCount = cellColors.filter(color => color === '#00FF00').length;
function updateAcceptanceRate() {
const acceptanceRate = (acceptedCount / 100) * 100;
document.getElementById('acceptance-rate').textContent = `Acceptance Rate: ${acceptanceRate.toFixed(2)}%`;
}
function paint(color) {
const colorCode = color === 'red' ? '#FF0000' : '#00FF00';
// Уменьшаем счетчик, если самая старая ячейка была зелёной
if (cellColors[99] === '#00FF00') {
acceptedCount--;
}
// Сдвигаем все ячейки на одну вправо
for (let i = cellColors.length - 1; i > 0; i--) {
cellColors[i] = cellColors[i - 1];
document.getElementById(`cell-${i}`).style.backgroundColor = cellColors[i];
}
// Устанавливаем новый цвет в первую ячейку
cellColors[0] = colorCode;
document.getElementById('cell-0').style.backgroundColor = colorCode;
// Увеличиваем счетчик, если новая ячейка зелёная
if (colorCode === '#00FF00') {
acceptedCount++;
}
// Сохраняем массив в localStorage
localStorage.setItem('cellColors', JSON.stringify(cellColors));
// Обновляем процент принятия
updateAcceptanceRate();
}
// Инициализация начальных цветов ячеек
window.onload = function() {
for (let i = 0; i < cellColors.length; i++) {
document.getElementById(`cell-${i}`).style.backgroundColor = cellColors[i];
}
updateAcceptanceRate();
};