Javascript jQuery点击和背景声音,带有on和off开关功能

Javascript jQuery点击和背景声音,带有on和off开关功能,javascript,jquery,Javascript,Jquery,我需要jQuery的点击和背景声音,以及一个开关 以下几点很重要: 加载页面时,背景声音应开始无限循环播放。但是:一开始一切都应该保持沉默 如果您单击“声音开启”按钮,背景声音应可听见。然后,应能听到咔嗒声 一次可能听到不止一声咔哒声 如果你点击“声音关闭”按钮,一切都会再次静音 这是我到目前为止编写的代码: $(“.sound\u control”)。单击(函数(){ $(“.on_off”).toggle(); }); $(文档).ready(函数(){ var background_so

我需要jQuery的点击和背景声音,以及一个开关

以下几点很重要:

  • 加载页面时,背景声音应开始无限循环播放。但是:一开始一切都应该保持沉默
  • 如果您单击“声音开启”按钮,背景声音应可听见。然后,应能听到咔嗒声
  • 一次可能听到不止一声咔哒声
  • 如果你点击“声音关闭”按钮,一切都会再次静音
  • 这是我到目前为止编写的代码:

    $(“.sound\u control”)。单击(函数(){
    $(“.on_off”).toggle();
    });
    $(文档).ready(函数(){
    var background_sound=document.createElement(“音频”);//这是背景声音函数。
    背景_sound.src=”https://www.pacdv.com/sounds/ambience_sounds/airport-gate-1.mp3";
    背景声音音量=0.1;
    background_sound.autoPlay=true;
    background_sound.preLoad=真;
    背景声音控制=真;
    $(“*”).hover(function(){//加载网站时声音应该开始播放。我认为hover函数不是最好的解决方案。此外,声音应该是循环的。
    背景音。播放();
    });
    var click_sound=document.createElement(“audio”);//这是click sound函数。它应该适用于.click_sound类的每个按钮。
    单击_sound.src=”http://soundbible.com/mp3/Stapler-SoundBible.com-374581609.mp3";
    单击_sound.volume=0.1;
    单击_sound.autoPlay=false;
    单击_sound.preLoad=true;
    单击_sound.controls=true;
    $(“.click_sound”)。单击(函数(){
    单击_sound.play();
    });
    });
    
    .on\u off:第n个子项(2){
    显示:无;
    }
    
    声关
    按钮一
    按钮二
    按钮三
    
    按钮四
    创建一个布尔变量,并在用户单击“声音开启”按钮时相应地将其值更改为True/False。每次单击“声音打开”或其更改形式的“声音关闭”时检查其值。使用它,您可以播放和停止声音。

    1。您可以使用HTML5音频元素的
    currentTime
    属性重新启动音频

    将其设置为
    0
    然后再次播放()

    2.将悬停事件替换为
    background\u sound.loop=true在加载时播放背景声音

    3.对于背景声音切换,请使用此内部开/关按钮
    。单击事件

    4.添加变量
    SOUND\u ON
    &内部按钮单击检查
    if(SOUND\u ON){}
    然后播放并单击声音

     if (background_sound.currentTime){
      background_sound.currentTime = 0;
      background_sound.pause();
      }else{
        background_sound.play();  
      }
    

    运行下面的代码。。。希望对你有帮助你好,谢谢你的回答。嗯,怎么可能呢?你的咔嗒声很有效。我假设问题是这个声音很长,在单击声音之后,它有静音部分:。所以,即使您的编码工作正常,您可能不会立即听到另一个咔哒声,因为前一个咔哒声仍在播放。这就是为什么它每2秒钟工作一次,但必须有一种方法可以同时激活两个声音?确实如此。即使在代码中,您也可以看到单击和背景声音同时播放。问题是你试图一次又一次地播放同一个声音,而不等待它结束。您有两个选项:1)单击任何声音按钮时停止并再次播放声音。2) 您可以为每个单击按钮单独添加此声音,它会工作但不会有效MM,好吗…:(您好!非常感谢!有一件事:点击声音在开始时也应该是无声的,如果声音被关闭了。怎么可能这样编码呢?编辑代码见#4点……。请投票并接受答案