【问题标题】:Tried multiple solutions onsite, none worked: Play <audio> on Konami code在现场尝试了多种解决方案,但均未奏效:在 Konami 代码上播放 <audio>
【发布时间】:2023-04-08 22:00:02
【问题描述】:

这是我关于 Stack Overflow 的第一个问题! :D 似乎有多个类似的问题,但我已经尝试了每个解决方案,但没有一个有效,但我决心彻底解决这个问题。目标是在成功输入 konami 代码后播放音频。

最简单的尝试如下(脚本位于头部,音频位于主体中。我尝试了每个解决方案,无论是否将它们封装在 window.onload=function(){ } 中):

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript" src="http://konami-js.googlecode.com/svn/trunk/konami.js"></script>

<script type="text/javascript">
  konami = new Konami(function() {
    document.getElementById('audio').play();
  });
</script>



<audio id="audio">
  <source src="js/ZipZipper.ogg" type="audio/ogg">
    <source src="js/ZipZipper.mp3" type="audio/mpeg">
</audio>

另一个尝试是这样的:

var konami = new Konami(function() {
  var audioElement = document.createElement('audio');
  audioElement.setAttribute('src', 'js/ZipZipper.ogg');
  audioElement.load();
  audioElement.addEventListener("load", function() {
    audioElement.play();
  }, true);
});

另一个,像这样,再次使用 html 音频标签

        konami = new Konami(playsong);
        playsong = function play() {
          var audio = document.getElementById("audio");
          audio.play();
        }

我不知道为什么没有任何效果。一切似乎都已到位!

【问题讨论】:

    标签: javascript jquery html audio interactive


    【解决方案1】:

    根据docs,可以这样操作:

    konami = new Konami();
    konami.code = function(){
        document.getElementById('audio').play();
    };
    konami.load();
    

    Fiddle Demo

    注意:不确定 konami 序列是否必须如此,但工作序列是上、上、下、下、左、右、左、右、b、a、输入

    【讨论】:

      猜你喜欢
      • 2019-09-02
      • 1970-01-01
      • 1970-01-01
      • 2022-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多