【问题标题】:chrome javascript dom remove iframe backgroundimagechrome javascript dom 删除 iframe 背景图片
【发布时间】:2012-02-10 15:37:50
【问题描述】:

我一直在为 chrome 扩展使用 iframe,而且我似乎遇到了很多 iframe 问题。无论如何,我有一个 iframe 注入网站(跨域)。我想要的是 iframes 背景图像继承父页面背景(所以它融入了)。所以这就是我正在尝试的:

//Setup iframe attributes
iframe.setAttribute("id","injected_frame");
iframe.setAttribute("src", 'google.com');
iframe.setAttribute("width","100%");
iframe.setAttribute("height","425");
iframe.setAttribute("frameborder","0");
iframe.setAttribute("scrolling","auto");
iframe.setAttribute("style","backgroundImage: inherit"); <-- undefined error

基本上它不起作用,背景保持不变,我在尝试这个时遇到未定义的错误。

【问题讨论】:

  • 哦,我也试过object.body.style,也得到了未定义的错误。

标签: javascript dom google-chrome iframe


【解决方案1】:

您可能只需将"backgroundImage: inherit" 更改为"background-image: inherit",但iframe 上的任何其他内联样式可能会丢失,因为我相信这会完全重置样式属性。

因此,我建议将最后一行替换为 iframe.style.backgroundImage = "inherit";

【讨论】:

  • 等一下,当 google.com 嵌入到您的 iframe 中时,您正试图更改它的背景?如果是这种情况,由于跨域限制,我认为 JS 不可能。阅读:stackoverflow.com/questions/217776/how-to-apply-css-to-iframe
  • 好吧,谷歌部分只是一个例子,但是是的,这基本上就是我想要完成的。我用谷歌搜索了很多,但由于跨域限制,我得到了相同的回复。这是我正在尝试制作的谷歌扩展,难道 manifest.json 文件中的权限行不应该使这成为可能(到目前为止我没有运气)吗?我将尝试使用内容脚本来强制将一些 css 放入 iframe 的 src url。希望这会奏效。
  • 哦,我忘了说,我真的不想改变背景——我只是希望它在 iframe 中是透明的,这样它会更好地融合。
  • 老实说,我对 Chrome 扩展了解不多,但基于此,一旦您在 manifest.json 中包含跨域权限,您似乎可以注入 JavaScript 和 CSS:@ 987654322@
猜你喜欢
  • 2012-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-03
  • 2021-11-29
  • 1970-01-01
  • 1970-01-01
  • 2014-05-14
相关资源
最近更新 更多