jQuery: Временно измените стиль затем сброс к исходному классу

  • Ксах Ли : на самом деле есть довольно примечательные и законные точки зрения, если вы можете отфильтровать все оскорбительные и рационально оценить высказывания, не соглашаясь (или не соглашаясь), основываясь исключительно на личности за заявлениями. Многие мои «противоречивые» точки зрения были поддержаны им и другими пресловутыми «троллями», которые критиковали языки или инструменты, которые я использую (d) на регулярной основе.

  • [Генераторы документации] ( http: //en.wikipedia.or / wiki / Comparison_of_documentation_generators): ... вид, в котором создатель изобрел несколько специально созданных специально для документирования -sourcecode roll-your-own синтаксис (включая, но не ограничиваясь этим, JavaDoc) совершенно излишен и является пустой тратой времени, потому что:

    • 1) Они недоиспользуются людьми, которые должны их использовать самый; и
    • 2) Все эти мини-языки документации все они могут быть легко заменены на YAML
56
задан mhelvens 2 August 2012 в 20:35
поделиться

3 ответа

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

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

function reset(this)
{
  $(this).css('background-color', '#000000');
}

Или просто удалите атрибут стиля

function reset(this)
{
  $(this).removeAttr('style');
}
78
ответ дан 26 November 2019 в 17:00
поделиться

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

2
ответ дан 26 November 2019 в 17:00
поделиться

Я знаю, что это устарело, но вы можете просто установить значение пустой строки, чтобы удалить свой собственный стиль, например:

// set
$(this).css('background-color', '#000000');

// reset
$(this).css('background-color', '');
112
ответ дан 26 November 2019 в 17:00
поделиться
Другие вопросы по тегам:

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