在现场尝试了多种解决方案,但均未奏效:在 Konami 代码上播放 <audio>

Posted

技术标签:

【中文标题】在现场尝试了多种解决方案,但均未奏效:在 Konami 代码上播放 <audio>【英文标题】:Tried multiple solutions onsite, none worked: Play <audio> on Konami code 【发布时间】:2015-06-10 04:25:29 【问题描述】:

这是我关于 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();
        

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

【问题讨论】:

【参考方案1】:

根据docs,可以这样操作:

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

Fiddle Demo

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

【讨论】:

以上是关于在现场尝试了多种解决方案,但均未奏效:在 Konami 代码上播放 <audio>的主要内容,如果未能解决你的问题,请参考以下文章

Jupyter 中的内联动画

使用命令行导入 mysql 数据库

裁剪图像而不加载到内存中

这里批量地理编码 API 停止工作 - HTTP 错误 500

如何在 ajax 调用上更新检票口 AjaxEditableMultiLineLabel 模型

类svg:悬停css填充无法正常工作[重复]