Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从Firefox扩展/插件向任何页面动态添加div元素_Javascript_Firefox Addon_Overlay - Fatal编程技术网

Javascript 如何从Firefox扩展/插件向任何页面动态添加div元素

Javascript 如何从Firefox扩展/插件向任何页面动态添加div元素,javascript,firefox-addon,overlay,Javascript,Firefox Addon,Overlay,我正在为firefox编写一个扩展,它将通过一个服务在web上为页面添加注释。我希望在页面底部有一个div或overlay元素(可能是基于XUL的),它可以让人们注释页面并保存它。类似于Google Friend Connect的功能,但是通过一个插件 这个浮动div/覆盖应该显示在FF上的每个页面上,并且应该呈现来自web服务的内容。我如何开始构建这个 如果可以通过FF插件访问DOM并对其进行修改,那么我希望能够在文档主体中添加一个浮动div。但这也不行。此处发布的示例:您可以这样做(因为我有

我正在为firefox编写一个扩展,它将通过一个服务在web上为页面添加注释。我希望在页面底部有一个div或overlay元素(可能是基于XUL的),它可以让人们注释页面并保存它。类似于Google Friend Connect的功能,但是通过一个插件

这个浮动div/覆盖应该显示在FF上的每个页面上,并且应该呈现来自web服务的内容。我如何开始构建这个

如果可以通过FF插件访问DOM并对其进行修改,那么我希望能够在文档主体中添加一个浮动div。但这也不行。此处发布的示例:

您可以这样做(因为我有)。要执行此操作,您需要找到要更改其内容的节点(如果要添加到页面底部,我想您可能需要使用该节点),然后调用以下节点之一:

 insertBefore(theNewNode, afterThisNode);
 insertAfter(theNewNode, thisNode);
或者可能,但我不确定:

 anExistingNode.innerHTML = anExistingNode.innerHTML + myNewContent;

这就足够让你开始了。

你必须做几件事:

  • 您可能需要添加一些自定义CSS来设置div的样式

  • 您必须将事件处理程序附加到
    load
    事件(或
    DOMContentLoaded
    ),以便在页面加载完成时收到通知。看一看,看一看

  • 您需要对希望新元素附加到的元素的引用。提供了一些有用的信息。例如,您可以获得对当前所选选项卡
    gBrowser.contentDocument.body
    正文的引用


  • 关于您的代码示例:您忘记了给元素赋予CSS属性
    position:absolute或<代码>位置:固定
    (您的代码中有一个输入错误,您写了
    帖子
    ),这取决于它应该出现在页面底部还是屏幕上。

    您可以使用firebug添加浮动div。但对于您所需要的,我想您会想要一个API,通过它您可以编程地完成这项工作。我不知道firebug是否支持,该死!想象一下,在问了一个问题之后,发现了一个打字错误。但是谢谢你的其他建议。@Felix Kling你能回答这个问题吗?