#javascript #css
#javascript #css
Вопрос:
Просто любопытно, знает ли кто-нибудь, что добавление класса к элементу через .classList.add()
быстрее / менее ресурсоемко, чем просто стилизация элемента непосредственно в javascript с использованием .style
?
Будет ли это даже? Или один быстрее другого?
Я полагаю, что .style
это было бы лучше, поскольку скрипту не нужно взаимодействовать с файлом CSS. Но, возможно, это только быстрее, если вы стилизуете один стиль. Плюс удаление стиля, если его для нескольких вещей, будет больше кода скрипта.
tl; dr Что лучше использовать?
element.classList.add("displayclass");
.displayclass{
display: none;
}
Против.
element.style.display = "none";
Комментарии:
1. Я не уверен, что быстрее. Но как дизайнер / разработчик я предпочитаю сценарии, которые используют классы для добавления стиля, потому что с ними легче работать и перезаписывать. Встроенные стили более раздражают при отладке.
2. Ах да, я это вижу. Я только начал изучать веб-дизайн в этом месяце, и мне было любопытно, есть ли общий консенсус в отношении того, что обычно используется.
3. В этом примере я бы использовал element.style.display = «none», потому что объявлено только одно свойство, и это более быстрый способ, чем объявление целого класса (3 строки кода против 1 строки кода). Если в вашем классе было объявлено больше свойств, кроме свойства отображения, тогда имело бы смысл использовать element.classList.add(«displayclass»).
Ответ №1:
Я также считаю, что использование классов и стилей в ваших файлах css / sass / etc — это лучший подход, чем ручное использование style
атрибута для элемента. Я всегда чувствую style
, что атрибут / должен использоваться / рассматриваться как «переопределение вручную»