Javascript 使用JS关闭整个网站内所有页面的音频

Javascript 使用JS关闭整个网站内所有页面的音频,javascript,audio,Javascript,Audio,所以在我的网站里我有4个页面,索引和其他。在所有页面上,我都有菜单导航,如果用户悬停在菜单内的锚上,就会播放声音。我发现这可能很烦人,所以我做了一个按钮,在点击时关闭声音,但它只在当前页面上关闭声音(我的意思是我从一开始就知道这一点)。有没有什么方法可以让我在第一次点击整个网站时关闭音频,这样用户就不必每次都点击“音频关闭”按钮?JS有可能吗?您建议我做什么?单击按钮,在localStorage中保存一个标志,例如: button.onclick = () => { localStor

所以在我的网站里我有4个页面,索引和其他。在所有页面上,我都有菜单导航,如果用户悬停在菜单内的锚上,就会播放声音。我发现这可能很烦人,所以我做了一个按钮,在点击时关闭声音,但它只在当前页面上关闭声音(我的意思是我从一开始就知道这一点)。有没有什么方法可以让我在第一次点击整个网站时关闭音频,这样用户就不必每次都点击“音频关闭”按钮?JS有可能吗?您建议我做什么?

单击按钮,在
localStorage
中保存一个标志,例如:

button.onclick = () => {
  localStorage.mute = 1 - Number(localStorage.mute);
  // this will result in `.mute` being either '0' or '1' (strings)
  // perform mute operation too, if a sound is currently playing, if you want
};
然后,在悬停侦听器中,如果
.mute
1
,则立即返回:

.onhover = () => {
  if (localStorage.mute === '1') {
    return;
  }
  // play sound
};

如果您只希望静音按钮在当前会话(选项卡生存期)中保持不变,请改用
sessionStorage

您可以使用服务器端PHP,循环所有页面,并回显静音脚本。