@tier4ik

Есть 2 селектора, открытие/закрытие пробую делать через класс. При клике на документе закрывается только второй. В чем ошибка?

Добрый день.
Есть 2 селектора, открытие/закрытие пробую делать через класс. При клике на документе закрывается только второй. В чем ошибка?
class CustomSelect {
      constructor(obj) {
        this.obj = obj;
        this.elem = this.obj.elem;
        this.elem.addEventListener('click', this._open);
        self = this
      }
      _open() {
        this.classList.add('open');
        document.addEventListener('click', self._onDocumentClick);
      };
      _onDocumentClick(e) {
        if (!self.elem.contains(e.target)) self._close();
      };
      _close(e) {
        self.elem.classList.remove('open');
        document.removeEventListener('click', self._onDocumentClick);
      }
    }
    

    var animalSelect = new CustomSelect({
      elem: document.getElementById('animal-select')
    });

    var foodSelect = new CustomSelect({
      elem: document.getElementById('food-select')
    });
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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