Чтобы предотвратить прокрутку страницы, можно добавить следующий код в функцию setTheme после изменения стилей body в соответствии с выбранным темным или светлым режимом:
```javascript
function setTheme(theme) {
if (theme === "light") {
document.body.style.backgroundColor = "white";
document.body.style.color = "black";
localStorage.setItem("toggleSwitchState", "checked");
} else {
document.body.style.backgroundColor = "#050505";
document.body.style.color = "white";
localStorage.setItem("toggleSwitchState", "unchecked");
}
// Проверяем, есть ли поддержка свойства CSS overscroll-behavior
if ('scrollBehavior' in document.documentElement.style) {
// Если поддерживается, устанавливаем значение 'unset' для свойства CSS overscroll-behavior у document.body
document.body.style.overscrollBehavior = 'unset';
} else {
// Если не поддерживается, устанавливаем значение 'hidden' для свойства CSS overflow у document.documentElement
document.documentElement.style.overflow = 'hidden';
}
}
```
Чтобы сохранить возможность изменять цвет у body при скроллировании страницы, можно изменить код следующим образом:
```javascript
function setTheme(theme) {
if (theme === "light") {
document.body.style.backgroundColor = "white";
document.body.style.color = "black";
document.body.style.overflow = 'scroll';
localStorage.setItem("toggleSwitchState", "checked");
} else {
document.body.style.backgroundColor = "#050505";
document.body.style.color = "white";
document.body.style.overflow = 'scroll';
localStorage.setItem("toggleSwitchState", "unchecked");
}
}
```
В этом случае, при скроллировании страницы появится ползунок, но цвет фона и текста у body будут изменяться в соответствии с выбранным режимом.