我想知道是否有一个JQuery函数可以用来将CSS从给定元素应用到另一个元素。我正在谈论完全 CSS;由于继承而没有更多应用。
更具体一点:
<div id="d1">
<p id="p1">Here is some text.</p>
</div>
<div id="d2">
<p id="p2">Here is some other text.</p>
<!-- I want this text in p2 to have the same styling as the text in p1, even after the inheritances of the divs are factored. -->
</div>
<script type="text/javascript">
$(...).(...); // ??????????????
</script>
如果JQuery
具有这样的功能,它将节省我一小时的尝试使用我自己的样式表(我使用具有主样式表的CMS,我无法改变)弄清楚如何覆盖/添加一百万个属性。
答案 0 :(得分:1)
虽然与Opera不兼容,但这应该可以实现您的目标:http://jsfiddle.net/6o3f3em6/1/
getComputedStyle
获取目标元素的所有CSS属性以下是相关代码:
var target = document.querySelector('#p1');
var receiver = document.querySelector('#p2');
var styles = getComputedStyle(target);
var cssText = '';
for(var style in styles){
cssText += style+':'+styles[style];
}
receiver.style.cssText = cssText;