2017-07-13 6 views
0

Hallo Ich versuche, eine Funktion mit einem Klick auf eine Schaltfläche deaktivieren und dann wieder aktivieren, sobald eine andere Schaltfläche geklickt Ich habe versucht, lösen, aber ich bekomme keine wo Vorschläge, wie ich das machen kann?Deaktivieren und wieder aktivieren eine Funktion, Mute und Unmute

Code:

<a href="#" class="MuteOn">Mute</a> 
<a href="#" class="MuteOff">Unmute</a> 

$('.MuteOn').on('click tap touch', function() { 
//Disable soundListen function 
}); 

$('.MuteOff').on('click tap touch', function() { 
//Enable soundListen function 
}); 

//

setInterval(function soundListen() { 
    if ($("body").hasClass("fp-viewing-1")) { 
     audio1.play(); 

    } else { 
     audio1.pause(); 
     audio1.currentTime = 0; 
    } 

    if ($("body").hasClass("fp-viewing-2")) { 
     audio2.play(); 
    } else { 
     audio2.pause(); 
     audio2.currentTime = 0; 
    } 

    if ($("body").hasClass("fp-viewing-3")) { 
     audio3.play(); 
    } else { 
     audio3.pause(); 
     audio3.currentTime = 0; 
    } 
}, 100); 

Danke im Voraus für alle Anregungen.

+0

haben Sie versucht aus .off() Funktion? – SamB

+0

Bei der Stummschaltungstaste wird nur der Ton stummgeschaltet oder die Wiedergabe gestoppt. Sie können Audio nur einstellen, um zu loopen und volum auf 0 zu setzen, wenn die Stummschaltung gedrückt wird. Oder Sie können einen bool -Wert setzen, der durch Stummschalten/Stummschalten eingestellt werden kann, und Sie können Return am Anfang Ihrer Funktion aufrufen, wenn es wahr ist. – maximelian1986

+0

Nein, ich habe nicht versucht .on() und .off() Ich Shell versuchen, dass jetzt @ maximelian1986 die Mute-Taste sollte die soundListen Funktion entweder Ton stumm schalten oder pausieren es wiederum keine Sounds spielen und dann, wenn die Stummschaltung Taste ist gedrückt, sollte es die soundListen Funktion wieder aktivieren und dann wird es die entsprechenden Audio spielen je nach der Körperklasse –

Antwort

1

Ok, also habe ich es so verstanden: - Auf der ersten Seite kann der Benutzer auf die Schaltfläche zum Stummschalten/Stummschalten klicken, und diese sollte während der Navigation durch alle anderen Seiten/Folien gespeichert werden.

Dann ist hier ein Code:

<!doctype> 
<html lang="en"> 
    <head> 
     <meta http-equiv="Content-type" content="text/html; charset=utf-8"> 
     <title></title> 
     <!-- Latest compiled and minified CSS --> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 

     <!-- jQuery library --> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 

     <!-- Latest compiled JavaScript --> 
     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
    </head> 
    <body> 
     <button id="mute">Mute</button> 
     <button id="unmute">Unmute</button> 
     <button id="reloadPage">Reload Page</button> 
     <script type="text/javascript"> 

      //get variable from local variables or set to false(you can change it to TRUE if you like to mute on page load) by default 
      var isMuted = localStorage.getItem("IsMuted")||false; 

      //mute button onclick method 
      $(document).on('click','#mute',function(e){ 
       isMuted = true; 
       //save to local variables 
       localStorage.setItem("IsMuted", isMuted); 
      }); 

      //unmute button onclick method 
      $(document).on('click','#unmute',function(e){ 
       isMuted = false; 
       //save to local variables 
       localStorage.setItem("IsMuted", isMuted); 
      }); 

      //reload page. also you can use F5 or Ctrl+F5 
      $(document).on('click','#reloadPage',function(e){ 
       location.reload(); 
      }); 

      $(document).ready(function(){ 
       alert("IsMuted = "+isMuted); 

       //you can encapsulate this into separate function and bind to show-next-slide button     
       if(isMuted) 
       { 
        return; 
       } 
       else 
       { 
        //get clip id by class name or another suitable method 
        PlayMyCoolMusic(clipId); 
       } 
      }); 



      function PlayMyCoolMusic(clipId) 
      { 
       //your audio player logic here 

      } 
     </script> 
    </body> 
</html> 

Damit Sie Sie Mute/unmute Status speichern kann, auch wenn Seite neu geladen wurde.

Verwandte Themen