PankovAlxndr
@PankovAlxndr
Fullstack web developer

Как убрать примененные через JS свойства CSS?

Здравствуйте!
Вот например такой код:
$('button').mousedown(function(event) {
        $(this).css({
            position: 'relative',
            top: '2px',
            boxShadow: 'none'
        });
    });
    $('button').mouseup(function(event) {
        $(this).css({,
            top: '0px',
            boxShadow: '0 3px 0px 0px #b10d21'
        });
    });


Изначально в css у кнопки есть тень и она нормально позиционированно (типа статик) - CSS

1) При нажатии я убираю тень и сдвигаю кнопку вниз (эффект нажатия)
2) Но когда я отпускаю кнопку нужно вернуть в исходное состоянии, которое описано в CSS, так вот вопрос:

Как мне это сделать, при этом не писать в JS те же самые CSS свойства, которые были у кнопки до нажатия
(по сути сбросить стили примененные в JS (mpsedown), а оставить только те, которые в CSS описаны)
  • Вопрос задан
  • 2928 просмотров
Решения вопроса 1
@IceJOKER
Web/Android developer
Думаю можно даже без JS обойтись.
Исходное состояние:
tag{
}
Когда элемент активен:
tag:active{

}

Ну а так:
Можно добавить какой-нибудь класс/исходное состояние и пользоваться toggleClass
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
junk1114
@junk1114
Web-программист
Думаю, плохой тон - без лишней необходимсти задавать css свойства через js
Ответ написан
Комментировать
@mayorovp
Если надо сбросить совсем все: this.removeAttribute("style")

Но конкретно для этой задачи уже привели лучшие решения.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы