javascript - 如何在javascript中将一个div的背景应用到另一个div

标签 javascript css background copy apply

我是 Javascript 新手,但基本上我想做的是从一个 div 的 CSS 样式获取背景,并将其应用到另一个 div。这是我尝试过的,但它不起作用。

NewDiv.style.background = OldDiv.style.background;

我知道我能做到:

NewDiv.style.innerHTML = OldDiv.style.inHTML;

但我似乎无法用 CSS 背景而不是 html 做类似的事情。我正在尝试仅使用 javascript 而不使用 Jquery 来完成此操作

最佳答案

这应该可以解决问题:

var element1 = document.getElementById("element1Id");
var element2 = document.getElementById("element2Id");
element2.style.background = document.defaultView.getComputedStyle(element1).background;

如果您只想要背景样式的某个部分,而不是一次性全部,则可以使用下面的任何选项来代替“背景”。

  • 背景颜色
  • 背景图片
  • 背景重复
  • 背景附件
  • 背景位置

有关背景样式的更多信息可以找到here

如果您好奇为什么我使用“document.defaultView.getCompulatedStyle”而不是“window.getCompulatedStyle”,请随时查看 this StackOverflow Q/A 回答了这个问题。

TL:博士; “document.defaultView.getComputedStyle”适用于所有浏览器

关于javascript - 如何在javascript中将一个div的背景应用到另一个div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39859771/

相关文章:

javascript - 在提交之前验证表单

javascript - 如何使用 Backbone.js 在 Bootstrap Modal 中加载 API 结果

jquery 按钮点击背景颜色变化

javascript - 尝试使用 chrome 控制台 javascript/jquery 获取内部元素

javascript - 查找接下来的 30 天 (javascript)

javascript - 使用javascript在CSS中获取@font_face标签的url

html - 赋予不同的细胞颜色

css - 如何使用 SVG 动画为stroke-dashoffset 设置动画?

iphone - 在后台运行时响应的iPhone应用

ios - iOS后台流程