Как я могу сказать значение атрибута класса через JQuery? - PullRequest
2 голосов
/ 21 июля 2010

У меня есть элемент с классом, класс имеет заданную ширину. Позже я изменю ширину с помощью $ ('# elm'). Width (100); теперь, даже позже, я хочу вернуться к исходному значению. Есть ли способ получить исходное значение из самого определения класса, а не хранить кучу глобальных значений с нужными мне значениями.

Спасибо, Джастин

Ответы [ 4 ]

3 голосов
/ 21 июля 2010

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

2 голосов
/ 21 июля 2010

Вы МОЖЕТЕ использовать .data(), чтобы сохранить исходные значения, а затем восстановить исходные значения оттуда, а не использовать глобальные значения - он связывает их таким образом.

1 голос
/ 21 июля 2010

Я бы предложил ответ nikc, но вы всегда можете сделать $('#elm').removeAttr("style");, если вы хотите стереть все стили, добавленные вашими скриптами, и вернуть их в значения CSS, которые вы указали.

Действительно,тем не менее, вы должны оставить стилизацию вне кода и просто добавлять, удалять и переключать различные классы.

0 голосов
/ 21 июля 2010

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

Пример:

$('#elem').width(100);
alert($('#elem').width()); // this will return 100, no matter what width #elem was before
$('body').add('<div class="someclass" id="elem2"></div>');
alert($('#elem').width()); // this may return the width as assigned in CSS to .someclass
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...