如何将一个div的所有属性分配给另一个div
问题描述:
我需要将一个div的位置,顶部,左侧,高度,宽度&边框分配给另一个div。由于我有多个div需要操作,因此我正在寻找一个使用jQuery的优雅解决方案。如何将一个div的所有属性分配给另一个div
请记住,两个div有不同的ID,我想保持这种方式。
预先感谢&最好的问候,sbguy
答
你能不只是添加一个类有问题的元素?如果不是,怎么是这样的:
function cloneCSS(source, receiver){
var cssObj = {
position: source.css('position'),
top: source.css('top'),
left: source.css('left'),
height: source.css('height'),
width: source.css('width'),
border-top-width: source.css('border-top-width'),
border-top-width: source.css('border-top-style'),
border-top-width: source.css('border-top-color'),
border-bottom-width: source.css('border-bottom-width'),
border-bottom-width: source.css('border-bottom-style'),
border-bottom-width: source.css('border-bottom-color'),
border-left-width: source.css('border-left-width'),
border-left-width: source.css('border-left-style'),
border-left-width: source.css('border-left-color'),
border-right-width: source.css('border-right-width'),
border-right-width: source.css('border-right-style'),
border-right-width: source.css('border-right-color'),
};
receiver.css(cssObj);
}
讨厌,你必须单独设置所有的边框属性,但是这是不言而喻的方式。关于创建一个像这样的对象然后在css()
方法中应用它的好处是您只需调用一次该方法,因此您只需修改一次DOM。
答
这可能是短期内更多的工作,但根据我的经验,使用班级是这类工作的最佳长期解决方案。
不使用它们很麻烦。
答
考虑使用.clone函数。
$("div-selector").clone();
您可以立即将其定位到您想要的位置。例如
$("div-selector").clone().appendTo("where-you-want-it");
您可以选择将其填入变量中,也可以修改克隆的元素或其内容。
可能的重复http://*.com/questions/754607/can-jquery-get-all-css-styles-associated-with-an-element – matino 2011-12-21 13:13:34
你可以使用CSS类,他们是为了.. 。(顺便说一下,身份证**必须**不一样,这不是一个选择;-)) – 2011-12-21 13:13:50
我给你做了一个函数,但是我不能记录它:http://jsfiddle.net/qQHqU/ – 2011-12-21 13:27:53