2013-09-13 5 views
14

Любой, кто знает, как переопределить приведенный ниже css с помощью jQuery?Дисплей нет! важно переопределить с помощью jQuery

.actionButton.single-pet 
     { 
      display: none !important; 
     } 

Это не будет работать для этого: $('.actionButton.single-pet').show();

+0

http://api.jquery.com/removeClass/ –

+0

Класс '.actionButton.single-pet' имеет больше свойств css, а не' display: none! Important; '? –

+0

@Mr_Green Nope. Это единственное свойство. Но класс «actionButton» обладает множеством свойств. Именно поэтому я ввел класс «один-любимый» и переопределил поведение отображения «actionButton». – Sampath

ответ

40
$('.actionButton.single-pet').attr("style", "display: inline !important"); 

Устанавливает CSS до display: inline !important;. display: inline является свойством по умолчанию для display. Вам нужно вернуть !important, чтобы переопределить предыдущие !important.

Обратите внимание, что !important не следует использовать часто. Прочтите принятый ответ How to override !important? для получения более подробной информации.

ОБНОВЛЕНИЕ: Мы не можем использовать .css() здесь, так как он не поддерживает !important. http://bugs.jquery.com/ticket/11173 для более подробной информации; кажется ошибкой.

+0

! Важная инструкция не поддерживается jquery, поскольку я знаю {any change}} –

+0

Отмечено, используя другой метод. Кроме того, я хотел бы знать, почему мой ответ занижен. Благодарю. – wei2912

+0

возможно потому, что ваш пост не является ответом на вопрос OP. –

1
$('.actionButton.single-pet').removeClass('single-pet'); 

Или просто:

$('.actionButton.single-pet').addClass('single-pet-shown'); 

С помощью CSS:

.actionButton.single-pet-shown { 
    display: block !important; 
} 
+0

Я вижу причину для downvote, updated;) –

+1

Без остальной части его CSS и разметки это чистое предположение, а не образованный ответ. – DevlshOne

+0

@DevlshOne это дает идею, но вы правы! –

Смежные вопросы