Как изменить переменную JS прямо на сайте?

265
07 февраля 2018, 11:32
<b>Прочитано страниц</b>: <span id="pagesJS1"></span>

и в подключенном JS

pagesJS1 = 462; 
document.getElementById("pagesJS1").innerHTML = pagesJS1;

Как изменять эту переменную не в коде, а прямо с сайта? Например, возле числа нажать на "изменить" и ввести новое число в появившееся окно. И переменная изменится. Важно, чтобы переменная сохранялась, чтобы при обновлении страницы на экране было измененное число. И реально ли это сделать?

Answer 1

UPD:

Чтобы значение переменной не менялось после обновления страницы, её надо где-то хранить. В идеале - на сервере (тогда она будет доступна для всех, кто обращается к странице).

На клиенте можно использовать localstorage (если его поддерживает браузер), но это решение только для конкретного пользователя и конкретного браузера, в котором он открывает страницу - другие пользователи изменений не увидят (и здесь не работает - скопируйте код на свою страницу):

var pagesJS1 = localStorage.getItem("pageNum"); //передаём в переменную значение pageNum из локального хранилища 
if(pagesJS1 == "") { //если хранилище пустое, то записываем в span 462 
  document.getElementById("pagesJS1").innerHTML = '462'; 
} 
else { //если там есть значение, то записываем его 
  document.getElementById("pagesJS1").innerHTML = pagesJS1; 
} 
 
var btn = document.getElementById("button"); 
var input = document.getElementById("changeNum"); 
 
btn.onclick = function() { 
  input.style.display = 'inline'; 
} 
 
input.onkeyup = function() { 
  var newNum = +input.value; 
  localStorage.setItem("pageNum",newNum); //сохраняем в localstorage новое значение 
  document.getElementById("pagesJS1").innerHTML = newNum; 
}
#changeNum { 
  display: none; 
}
<b>Прочитано страниц</b>: <span id="pagesJS1"></span> 
<button id="button">Изменить</button> 
<input type="number" id="changeNum" />

READ ALSO
Поиск по странице

Поиск по странице

Форма поиска:

269
Помогите с гридами пожалуйста

Помогите с гридами пожалуйста

Совсем затупил,как сделать на гридах,чтоб было 3 колонки,но в 2 и 3 колонке было по 4 элемента

297
После подвала идет очень много белого цвет, но его быть не должно

После подвала идет очень много белого цвет, но его быть не должно

Если открыть файл indexhtml(в браузере) и пролистать в footer, то там будет подвал, а дальше пойдет тупо белый цвет

302
Как работает аудиоплеер [требует правки]

Как работает аудиоплеер [требует правки]

Здравствуйте, давно интересует вопрос как работает аудиоплеер на примере сайта: https://book-audiocom/find/genre=%D1%84%D0%B0%D0%BD%D1%82%D0%B0%D1%81%D1%82%D0%B8%D0%BA%D0%B0/2117:strugatskie-piknik-na-obochine

206