Ваш код немедленно устанавливает переменную localStorage в строку "isMusicPlaying", и я не понимаю, почему.Вместо этого вы можете проверить только то, что равно. Если оно равно нулю, значит, оно не установлено.
Вот код, который я бы предложил.В начале мы проверяем, имеет ли переменная localStorage musicPlaying значение null (что означает, что она не установлена) или true (что означает, что она воспроизводилась до перезагрузки).Затем я сделал функции воспроизведения и паузы, которые делают то, что уже сделал ваш код, но они также обновляют переменную localStorage musicPlaying.Кроме того, я создал функцию playPause, которая проверяет, задана ли для переменной localStorage musicPlaying значение true или false, и выполняет play()
или pause()
соответственно.
var audio = document.getElementById('music');
if (localStorage.getItem("musicPlaying") === null) play()
else if (localStorage.getItem("musicPlaying") === "true") play()
function play() {
localStorage.setItem("musicPlaying", "true")
audio.play();
document.getElementById("on").style.color = "red";
document.getElementById("off").style.color = "black";
document.getElementById("nosound").style.height = "0";
document.getElementById("nosound").style.width = "0";
document.getElementById("sound").style.height = "75";
document.getElementById("sound").style.width = "75";
document.getElementById('music').play();
}
function pause() {
localStorage.setItem("musicPlaying", "false")
audio.pause();
document.getElementById("on").style.color = "black";
document.getElementById("off").style.color = "red";
document.getElementById("nosound").style.height = "75";
document.getElementById("nosound").style.width = "75";
document.getElementById("sound").style.height = "0";
document.getElementById("sound").style.width = "0";
document.getElementById('music').pause();
}
function playPause() {
var musicPlaying = localStorage.getItem("musicPlaying")
if (musicPlaying == "true") pause()
else if (musicPlaying == "false") play()
}
document.getElementById("on").style.color = "red";
document.body.onkeypress = function(pressFour){
if(pressFour.keyCode == 52) playPause();
}
Надеюсь, это поможет!