Кнопка START / STOP, в которой хранится ее значение - PullRequest
0 голосов
/ 08 декабря 2018

Мне нужно создать Start / Stop (одну кнопку) для отправки команд записи на камеру.

Команды отправляются через канал команд, написанный на php.

Кнопка должнасохранить это значение.Таким образом, когда страница обновляется, она запоминает последнее значение.

Например:

Я нажимаю кнопку «Пуск» в первый раз.Он отправит команду начать запись и изменится на «Стоп».Если я перезагрузлю страницу, я найду кнопку «Стоп», которая отправит команду остановить запись.При щелчке он возвращается в состояние по умолчанию, которое называется «Пуск».

Может ли кто-нибудь помочь, пожалуйста?

Вот что у меня есть:

HTML

<input type="button" value="Start" onclick="javaScript:startstopRecording()" id="startButton">

JS

var recording = null;
function init(){

}

startstopRecording = function(){
    if(recording != null){
        stop();
    } else {
        start();

    }
    change();
}

function start(){
}

change = function(){
var elem = document.getElementById("startButton");
if (elem.value=="Stop") elem.value = "Start";
else elem.value = "Stop";
}

stop = function(){
    recording = null;
}
window.onload = recording;

1 Ответ

0 голосов
/ 08 декабря 2018

Вы можете использовать javascript localStorage

Свойство localStorage, доступное только для чтения, позволяет получить доступ к объекту Storage для источника документа.Сохраненные данные сохраняются между сеансами браузера.localStorage похож на sessionStorage, за исключением того, что, хотя данные, хранящиеся в localStorage, не имеют срока годности, данные, хранящиеся в sessionStorage, очищаются, когда заканчивается сеанс страницы, то есть когда страница закрыта.

Вы должны установить элемент в localStorageпосле нажатия кнопки:

window.localStorage.setItem("recording", 1); // or 0

И вы можете получить последнее значение статуса, например, так:

var recording = window.localStorage.getItem('recording');

Вот еще одна подсказка, чтобы понять это:

var recording = window.localStorage.getItem('recording');
startstopRecording = function(){
    if(recording == 1) {
        stop();
    } else {
        start();
    }
    change();
}

function start() {
    //start recording
    window.localStorage.setItem("recording", 1);
}

function stop()  {
    //stop recording
    window.localStorage.setItem("recording", 0);
}
change();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...