Наблюдатель пересечения Javascript на фиксированном элементе - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть фиксированный нижний колонтитул, который расширяется при срабатывании события прокрутки и сжимается после 1500 мс после последней прокрутки или перемещения.

Ниже приведена упрощенная версия производственного сценария, в которой я использую lodash throttle иудалить прослушиватель событий при уничтожении компонентов.

var
  el = document.getElementsByTagName('div')[0],
  timer
;

function rest(){

  clearTimeout(timer);

  timer = setTimeout(() => {
    el.classList.add("rest");
  }, 1500);

  el.classList.remove("rest");

}

window.addEventListener('scroll', rest);
i {
  display:block;
  height: 100px;
  background: gray;
  margin: 50px 20px;
  list-style:none;
}

div {
  position: fixed;
  bottom: 0;
  height: 50px;
  width: 100%;
  background: blue;
  transition: all 0.6s;
}

.rest {
  height: 20px;
  background: red;
}
<i></i>
<i></i>
<i></i>
<i></i>
<i></i>
<div class="rest"></div>

Я только начал использовать наблюдатель пересечения, и мне интересно, как я могу добиться того же поведения, так как это фиксированный элемент, пересечение отсутствуетЕдинственное, о чем я могу думать, это создать элемент «страж» и изменить его положение на каждом перекрестке, что кажется излишним и не поддается основной цели включения наблюдателя на перекрестке «Производительность»

без ясной идеи, я обращаюсь к вам, ребята, и вашему опыту.

...