Javascript 从XUL中向文档动态添加“嵌入”类型元素

Javascript 从XUL中向文档动态添加“嵌入”类型元素,javascript,firefox,xul,Javascript,Firefox,Xul,这听起来可能很模糊,但我在过去6个小时里一直在尝试解决这个简单的壮举: 我在Firefox插件中运行代码 用户触发一个需要播放一些音频的操作,但这里的问题是——这个音频是动态的,取决于用户的输入,并且是从某个地方的服务器获取的。 我选择动态地将一个嵌入元素插入到一个新tabbrowser的文档中,其src指向服务器资源,但我完全无法做到这一点!我没能嵌入元素! 有趣的是,它在html文档中的脚本标记内的普通javascript函数作用域代码中运行良好,但在使用XUL时所有操作都失败 下面是代码片

这听起来可能很模糊,但我在过去6个小时里一直在尝试解决这个简单的壮举:

我在Firefox插件中运行代码 用户触发一个需要播放一些音频的操作,但这里的问题是——这个音频是动态的,取决于用户的输入,并且是从某个地方的服务器获取的。 我选择动态地将一个嵌入元素插入到一个新tabbrowser的文档中,其src指向服务器资源,但我完全无法做到这一点!我没能嵌入元素! 有趣的是,它在html文档中的脚本标记内的普通javascript函数作用域代码中运行良好,但在使用XUL时所有操作都失败

下面是代码片段

function loadURL(url)  
{
var razorTabBrowser = gBrowser.getBrowserForTab(gBrowser.addTab("chrome://razorextension/content/read.html"));  
razorTabBrowser.addEventListener("load", function () { 

    var soundEmbed = razorTabBrowser.contentDocument.createElement("embed");
     soundEmbed.setAttribute("src", url);
     soundEmbed.setAttribute("hidden", true);
     soundEmbed.setAttribute("autostart", true);
     soundEmbed.removed = false;

     razorTabBrowser.contentDocument.body.appendChild(soundEmbed)

    }, true);
}
据我所知,只要是WAV格式,它就可以在远程URL上工作

编辑:

我不记得Firefox支持哪个版本,但我认为您可以使用它,而无需将其添加到文档中