Я клонирую элемент и удаляю идентификатор, чтобы избежать дублирования. Обычно будет только класс. В случае, если конечный пользователь решит использовать идентификатор и стиль, я хочу, чтобы стиль сохранялся на клонированном элементе. Вот пример.Удалите идентификатор или класс, но сохраните стиль
/* CSS */
#unique {
background: yellow;
}
.general {
border: 1px solid blue;
}
/* HTML */
<div id="container">
<div id="unique" class="general">hello</div>
</div>
/* JS/JQuery */
$(function() {
$(".general").clone().appendTo("#container").removeAttr("id");
});
EDIT: Связанный дубликат предоставляет плагин jQuery. Он использует метод .getComputedStyle, который работает, но ресурсоемкий, так как он загружает все из вычисленных стилей. Я надеялся найти способ идентифицировать только пару стилей конечного пользователя, которые они могли применить к идентификатору.
Возможный дубликат [Может ли jQuery получить все стили CSS, связанные с элементом?] (Http://stackoverflow.com/questions/754607/can-jquery-get-all-css-styles-associated-with-an- element) –
Разве вы не можете просто создать класс с этими стилями и вставить его? – Rob
Почему бы просто не удалить идентификатор, когда вы клонируете его, а не отбираете его? – epascarello