所以,我有一个元素附加了一些“预先存在的”行为。所以,我发现仅仅移动它(根据一些新的要求)就可以保留现有的行为 = 好。但问题是,当我移动元素时,我需要赋予它“新样式”。
所以,如果我有这样的事情:
<div id="existingStructure">
<div id="legacyElement"></div>
</div>
现在,这两者都有预先存在的样式。我可以重新排列这些样式等。但我不能改变它们。样式附加到“id”而不是类定义。我相信如果需要我可以改变它。
现在,当“新 div”发生某些事情时,我需要移动“legacyElement”。我只是
jQuery('#newStructure').append('#legacyElement');
<div id="newStructure">
<div id="legacyElement"></div>
</div>
不幸的是,当我在 newStructure 上动态移动时,我在 newStructure 上的样式似乎不适用于 *legacyElement"。
我正在考虑将所有样式移动到一个类而不是关联到 id,当我移动它时......我只是 jQuery().addClass / jQuery().removeClass 等......
有没有更好/更简单更健壮的方法,我可以让legacyElement在它位于existingStructure下时松散它的样式,然后在移动到“newStructure”等时获得新的样式……反之亦然。那个元素“legacyElement”将来回ping..所以,我需要它在每个父div下都有样式。
因此,当页面上发生动作时,我将其移回:
jQuery('#existingStructure').append('#legacyElement');
如果我不够简洁,请告诉我。
EXISTING 样式在外部 CSS 文件中,就像这样..
#existingStructure {
// bunch of css
}
#existingStructure .item1 input[type="text"] {
// bunch of css
}
#legacyElement{
// bunch of css
}
并且新样式是相同的,除了可能会应用“其他样式”。
#newStructure {
// bunch of css
}
#newStructure .item1 input[type="text"] {
// bunch of css
}