【发布时间】:2011-02-15 06:34:27
【问题描述】:
这听起来可能含糊不清,但过去 6 小时我一直在尝试解决这个“简单”的壮举:
- 我有代码在 Firefox 插件中运行
- 用户触发了一个需要播放一些音频的操作,但这里要注意的是 - 此音频是动态的(取决于用户的输入),并且正在从某处的服务器获取。
- 我选择动态插入一个
embed元素到一个新的tabbrowser的文档中,它的src指向服务器资源,但是我完全无法做到这一点!我未能嵌入元素!
有趣的是,它在普通的 javascript 函数范围内运行良好(html 文档中 script 标记内的代码),但在使用 XUL 时一切都失败了。
下面是代码sn-p
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);
}
【问题讨论】:
标签: javascript firefox xul