1

特定のページが読み込まれたときにオーディオ ファイルを再生 (およびループ) しようとしている 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 リンクに移動すると、ファイルが再生されます。ファイルが再生されない理由を知っている人はいますか?

4

1 に答える 1