特定のページが読み込まれたときにオーディオ ファイルを再生 (およびループ) しようとしている FireFox 拡張機能があります。私は次のようにオーディオタグを埋め込んでいます:
start.js
window.onload = function() {
self.port.on("soundfile", function(soundurl){
var audioElement = document.createElement('audio');
audioElement.setAttribute('src', soundurl);
audioElement.load();
audioElement.addEventListener("load", function() {
audioElement.play();
audioElement.loop();
}, true);
document.body.insertBefore(audioElement, document.body.firstChild);
});
};
私のmain.jsファイルを使用してローカルオーディオファイルを渡しています:
main.js
var pageMod = require("sdk/page-mod");
var self = require("sdk/self");
var soundurl = self.data.url("sample.ogg");
pageMod.PageMod({
include: "pandasarethebe.st",
contentScriptFile: self.data.url("start.js"),
onAttach: function(worker) {
worker.port.emit("soundfile",soundurl);
}
});
オーディオ タグが Web ページに挿入されているように見えますが、再生されません。
<audio src="resource://jid1-zlxnevw93j6qaa-at-jetpack/sampleapp/data/sample.ogg"></audio>
ブラウザで実際の src リンクに移動すると、ファイルが再生されます。ファイルが再生されない理由を知っている人はいますか?