在网站上打开和关闭声音

turn sound on and off on a site

本文关键字:声音 网站      更新时间:2023-09-26

我正在制作一个带有音效的老派网站。现在我有了音效,但我遇到了一个小问题。我想知道如何用一个按钮打开和关闭它们。我想在加载页面时默认打开它们,然后你可以打开或关闭它

当你进入网站和点击链接等时,我甚至让它们播放。但现在我想把它们都静音。Jquery.on和.off对我不起作用……我想我在这里做错了什么,我不太懂javascript:

var siteAudio = function () {
 if ( $(".turn-off").hasClass("turnedon") ) {   

var galleryleft = $("#galleryleft")[0];
$(".arrowleft").click(function() {
galleryleft.play();
});
}
else {
var galleryleft = $("#galleryleft")[0];
$(".arrowleft").click(function() {
galleryleft.pause();
});
}

$( ".turn-off" ).click(function() {
$('.turn-off').toggleClass('turnedon');
$('.turn-off').toggleClass('turnedoff');
$(siteAudio).off();
});
window.onload = function () {
$(siteAudio).on();
}

现在这是有效的,但声音应该完全关闭,而是在你点击某个东西的第四次时播放(或者在使用时在鼠标的第四个位置播放)我希望任何人都能说出我在这里做错了什么

Itink这将根据您所说的内容进行操作。你似乎想得太多了,这在jQuery/javascript:)中很常见

$(document).ready( function() {
  var galleryleft = $("#galleryleft")[0];
  var gallerySoundOn = true;

  $( ".turn-off" ).click( function(e) {
    if( gallerySoundOn ) { gallerySoundOn = false; }
    else { gallerySoundOn = true; }
    e.preventDefault();
  });
  $(".arrowleft").click( function(e) {
    if( gallerySoundOn ) { galleryleft.play(); }
    else { galleryleft.play(); galleryLeft.currentTime = 0; }
    e.preventDefault();
  });
});

让我知道进展如何。

Simey,您刚刚为我提供了所需的信息:),非常感谢!

我唯一需要改变的是

galleryleft.play(); galleryLeft.currentTime = 0;

我把它改成:

galleryleft.pause;

但对于其他部分来说,这比我的剧本更有意义。事实上,我把事情搞得过于复杂了。我欠你一杯啤酒。。。