Сброс ползунков после отпускания кнопки мыши
Сам я нуб, пытаюсь с помощью чата гпт сделать одностраничный лендинг. Есть ползунки калькулятора цены, они не держат значения - сбрасываются сразу как отпускаю кнопку мыши. Вроде, весь код, с ними связанный, ниже. Что можно сделать?
<section class="calculator">
<h2>Калькулятор цены</h2>
<div class="slider-container">
<label>Количество часов работы: <span id="hoursValue">1</span></label>
<input type="range" id="hours" min="1" max="6" value="1" oninput="updateValues()">
</div>
<div class="slider-container">
<label>Пакетная обработка (фото): <span id="batchValue">10</span></label>
<input type="range" id="batch" min="10" max="100" step="5" value="10" oninput="updateValues()">
</div>
<div class="slider-container">
<label>Журнальная обработка (фото): <span id="magazineValue">1</span></label>
<input type="range" id="magazine" min="1" max="100" value="1" oninput="updateValues()">
</div>
<h3>Итоговая цена: <span id="totalPrice">0</span> ₽</h3>
</section>
function restoreValues() {
const hours = localStorage.getItem("hours") || 1;
const batch = localStorage.getItem("batch") || 10;
const magazine = localStorage.getItem("magazine") || 1;
document.getElementById("hours").value = hours;
document.getElementById("batch").value = batch;
document.getElementById("magazine").value = magazine;
updateValues(); // Обновляем отображаемые значения
}
function updateValues() {
const hours = document.getElementById("hours").value;
const batch = document.getElementById("batch").value;
const magazine = document.getElementById("magazine").value;
document.getElementById("hoursValue").innerText = hours;
document.getElementById("batchValue").innerText = batch;
document.getElementById("magazineValue").innerText = magazine;
const totalPrice = hours * 1000 + batch * 200 + magazine * 500;
document.getElementById("totalPrice").innerText = totalPrice;
// Сохраняем значения в localStorage
localStorage.setItem("hours", hours);
localStorage.setItem("batch", batch);
localStorage.setItem("magazine", magazine);
}
document.addEventListener("DOMContentLoaded", () => {
restoreValues(); // Восстанавливаем значения ползунков
Ответы (1 шт):
Автор решения: svm
→ Ссылка
Вам ChatGPT работу с библиотекой Cocoen неверно организовал.
Он использовал старую версию, где, возможно, были ошибки.
Исправленный мной код: https://jsfiddle.net/2yrc3g1v/1/
Руководствовался документацией cocoen (github)
<!--Удалил-->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/cocoen.min.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/cocoen.min.js"></script>
<!--Добавил-->
<script src="https://unpkg.com/cocoen/dist/cocoen.js"></script>
// Удалил
new Cocoen(document.querySelector('.cocoen'));
// Добавил:
Cocoen.create(document.querySelector('.cocoen'));
Увы, но искусственный интеллект на сегодняшний день нужно проверять во всём.