假设我们x在页面上有一个DIV ,我们想要将该DIV的内容复制("复制粘贴")到另一个DIV中y.我们可以这样做:
y.innerHTML = x.innerHTML;
Run Code Online (Sandbox Code Playgroud)
或者使用jQuery:
$(y).html( $(x).html() );
Run Code Online (Sandbox Code Playgroud)
但是,看起来这种方法不是一个好主意,应该避免.
(1)为什么要避免这种方法?
(2)应如何做呢?
更新:
为了这个问题,让我们假设DIV中没有ID的元素x.
(对不起,我忘了在原来的问题中报道这个案子.)
结论:
我已经在下面发布了我自己的答案(正如我原先的意图).现在,我也计划接受我自己的答案:P,但是我的答案是如此惊人,以至于我不得不接受它.
在jQuery中,无论是$('#foo').height()和$('#foo').css('height')返回值,即使没有高属性是使用CSS明确设置.有没有办法检测元素是否没有明确的高度,即它只是根据其内容呈现?
这是我写的一个例子来演示:http://jsfiddle.net/Enn6p/2/
编辑
为了进一步澄清我的问题,$('#foo').css('min-height')并$('#foo').css('max-height')已经正确地返回一个空字符串,如果他们没有明确设定.我正在寻找一种方法来确定是否height通过CSS设置显式值.
使用案例
我有一个脚本,试图使浮动元素具有相同的高度.它通过循环元素来查看哪一个是最高的,然后将该高度应用于所有元素.在某些情况下,这些元素已经具有明确的高度设置,但其他元素是隐式呈现的.
我现在想要添加撤消它的功能,并使一切恢复到原来的高度.为了做到这一点,我需要知道元素最初是否设置了高度,或者高度是否为"auto".一旦我能够做到这一点,我可以将原始值存储在元素的数据集合中,然后使用它来稍后恢复到原始高度.