Как сбросить элементы к их исходному состоянию после цепочки манипуляций?

После набора анимации, добавления классов и установки стилей CSS. существует ли простой способ сбросить элемент, чтобы вернуться в его исходном сервере, поставленном состояние?

5
задан The Disintegrator 31 May 2010 в 16:50
поделиться

1 ответ

jQuery устанавливает свои манипуляции с помощью встроенного атрибута стиля в стиле , поэтому просто установите для него значение '' .

$('#someDiv').attr('style','');

Предполагается, что для элемента, поступающего с сервера, не были установлены атрибуты встроенного стиля . В таком случае лучше использовать таблицы стилей.

Если элемент должен поступать с сервера с установленными атрибутами стиля , то я полагаю, вы можете кэшировать значение в переменной и сбрасывать его при необходимости.

   // Cache original attributes
var originalAttributes = $('#someDiv').attr('style');


   // Reset from original
$('#someDiv').attr('style',originalAttributes);

РЕДАКТИРОВАТЬ:

При необходимости вы можете отправить свои элементы с сервера с настраиваемыми атрибутами, например, чтобы запомнить исходный атрибут class .

<div class="myClass" originalClass="myClass">...</div>

Затем вы можете ссылаться на оригинал в любое время.

Вы даже можете найти все элементы с атрибутом originalClass , подобным этому.

var $elementsWithOriginal = $('[originalClass]');

или найдите элементы, в которых атрибут class был изменен по сравнению с исходным.

var $modifiedFromOriginal = $('[originalClass]').filter(function() {
        return $(this).attr('class') != $(this).attr('originalClass');
    });
17
ответ дан 18 December 2019 в 09:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: