@DeniSidorenko

Как сократить такой код, Waypoints.js?

Добрый день, использую плагин Waypoints
Можно выдавать пойнт по id, но и по классу. Как можно сделать рефакторинг такого кода. Я бы хотел задать единый класс для всех секции, и написать один лишь вызов
var waypoints = $('.any').waypoint(function (direction) {
    $('.any').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsTwo = $('.odds').waypoint(function (direction) {
    $('.odds').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsThree = $('.simple').waypoint(function (direction) {
    $('.simple').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsFour = $('.faq').waypoint(function (direction) {
    $('.faq').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsFive = $('.doctors').waypoint(function (direction) {
    $('.doctors').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsSix = $('.consultation').waypoint(function (direction) {
    $('.consultation').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsSeven = $('.stages').waypoint(function (direction) {
    $('.stages').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsEight = $('.start').waypoint(function (direction) {
    $('.start').addClass('loader');
  }, {
    offset: '50%'
  });
  var waypointsNine = $('.seven').waypoint(function (direction) {
    $('.seven').addClass('loader');
  }, {
    offset: '50%'
  });
  • Вопрос задан
  • 63 просмотра
Решения вопроса 1
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
var allWaypoints = [];
$('.any, .odds, .simple, .faq, .doctors, .consultation, .stages, .start, .seven').each(function() {
  var $this = $(this);
  allWaypoints.push($this.waypoint(function(direction) {
    $this.addClass('loader');
  }));
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 14:10
500 руб./за проект
19 апр. 2024, в 13:31
10000 руб./за проект