Просмотр полной версии : Удаление классов с высокой производительностью
arkadii_parovozov
18.02.2017, 13:22
Всем привет!
Возник такой вопрос: что менее затратное (в плане производительности, скорости работы скрипта) сбросить все классы по классу группы элементов используя эту функцию:$(".class1").removeClass("class2");
или циклом проверять у каких элементов присутствует этот класс (class2) и уже у них удалять его?
Или это по сути одно и тоже...
Или это по сути одно и тоже...
да
только в том и другом случае цикл будет только для удаления, для выборки по классу цикл не нужен
Alexandroppolus
18.02.2017, 13:58
$('.class1.class2').removeClass('class2');
arkadii_parovozov
18.02.2017, 14:08
$('.class1.class2').removeClass('class2');
Или
$(".class1").removeClass("class2");
Или
$('.class2') .each(function(){
$(this).removeClass("class2");
});
Что из этого будет выполняться быстрее всего, и почему?
arkadii_parovozov
18.02.2017, 14:40
arkadii_parovozov, почему условия разные?
Но результат-то один.
При этих условий удаляется класс "class2". В этом-то и смысл создания этой темы, чтобы узнать какой метод самый производительный и почему...
arkadii_parovozov
18.02.2017, 15:15
Согласен, тогда он ищет только класс class2. А если выбрать из этих трех функций:
$('.class1.class2').removeClass('class2');
$(".class1").removeClass("class2");
$('.class1') .each(function(){
$(this).removeClass("class2");
});
https://jsfiddle.net/292ehxbb/6/
arkadii_parovozov
18.02.2017, 16:05
Спасибо за наглядный пример!!! Всем плюсы! )
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot