Google chrome extension 在页面加载时动态播放HTML5音频

Google chrome extension 在页面加载时动态播放HTML5音频,google-chrome-extension,playback,html5-audio,pageload,Google Chrome Extension,Playback,Html5 Audio,Pageload,我知道如果嵌入到正文中,我可以在正文中使用以下命令在页面加载时自动播放声音,但我想动态地尝试一下 我所说的动态是指查找音频文件,并使用JavaScript或JQuery在加载时播放 有人能帮忙吗 <audio preload="auto" tabindex="0" autoplay="true" loop="true"> <source src="shorttones.mp3" type="audio/mpeg" /> <source src="sh

我知道如果嵌入到正文中,我可以在正文中使用以下命令在页面加载时自动播放声音,但我想动态地尝试一下


我所说的动态是指查找音频文件,并使用JavaScript或JQuery在加载时播放

有人能帮忙吗

<audio preload="auto" tabindex="0" autoplay="true" loop="true">
    <source src="shorttones.mp3" type="audio/mpeg" />
    <source src="shorttones.ogg" type="audio/ogg" />
    Your browser does not support the audio element.
</audio>

您的浏览器不支持音频元素。
我试过了,没用

<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
<script src="js/buzz.js" type="text/javascript"></script>
<script type="text/javascript">
if (!buzz.isSupported()) {
    alert("Your browser does not support the audio element, ogg, or mp3.");
    return;
}

buzz.defaults.formats = [ 'ogg', 'mp3' ];
buzz.defaults.preload = 'metadata';

var mySound = new buzz.sound( "sounds/highpitchsound");

mySound.play();
mySound.loop();
</script>
</head>
</html>

如果(!buzz.isSupported()){
警报(“您的浏览器不支持音频元素、ogg或mp3。”);
返回;
}
buzz.defaults.formats=['ogg','mp3'];
buzz.defaults.preload='metadata';
var mySound=new buzz.sound(“sounds/highpitchsound”);
mySound.play();
loop();

您可能想看看buzz.js:


如果您的意思是在没有自动播放的情况下播放,这将是一种方法:

<html><body onload="playSound();">
<audio id="noise"></audio>
</body>
<script>
function playSound(){
    var snd=document.getElementById('noise');
    canPlayMP3 = (typeof snd.canPlayType === "function" && snd.canPlayType("audio/mpeg") !== "");
    snd.src=canPlayMP3?'shorttones.mp3':'shorttones.ogg';
    snd.load();
    snd.play();
}
</script></html>

函数playSound(){
var snd=document.getElementById('noise');
canPlayMP3=(typeof snd.canPlayType==“函数”和&snd.canPlayType(“音频/mpeg”)!==”);
snd.src=canplaym3?'shorttones.mp3':'shorttones.ogg';
snd.load();
snd.play();
}

你说的“动态”是什么意思?定义并播放没有HTML的音频?定义HTML,然后用JavaScript播放它?我所说的动态是指找到音频文件,并使用JavaScript或JQuery播放onload。您可能需要将buzz.js代码放在事件处理程序中,以便在窗口加载完成时使用:window.addEventListener('load',function(){…},true);我正试图单独使用JavaScript/JQuery来实现这一点。我尝试了另一个答案中的buzz.js,但仍然有问题。上面的答案不使用buzz。你试过了吗?
canplaym3
只是一个测试,用于确定它应该提供什么文件,如果这是您关心的部分。当然:play()失败,因为用户没有首先与文档交互。
<html><body onload="playSound();">
<audio id="noise"></audio>
</body>
<script>
function playSound(){
    var snd=document.getElementById('noise');
    canPlayMP3 = (typeof snd.canPlayType === "function" && snd.canPlayType("audio/mpeg") !== "");
    snd.src=canPlayMP3?'shorttones.mp3':'shorttones.ogg';
    snd.load();
    snd.play();
}
</script></html>