Как получить высоту li из верхней части экрана? - PullRequest
1 голос
/ 25 марта 2020

Итак, у меня есть div и внутри div, у меня есть ul и li внутри него, и у li есть разные классы, но классы в порядке, поэтому я хочу найти высоту имени класса li: пока я не возможность получить высоту div из верхней части экрана.

<div class="div-class">
  <ul>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="pdf"></li>
    <li class="pdf"></li>
    <li class="pdf"></li>
    <li class="pdf"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
  </ul>
</div>
alert($(".div-class").closest('.pdf').offset().top));

Этот код не работает над тем, как получить высоту li с классом pdf.

1 Ответ

1 голос
/ 25 марта 2020

closest() обходы вверх дерево DOM. Элемент, который вы ищете, является потомком ul, поэтому вам нужно go вниз . В качестве такового используйте find() вместо:

console.log($(".div-class").find('.pdf:first').offset().top);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="div-class">
  <ul>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="deepesh"></li>
    <li class="pdf">Target element</li>
    <li class="pdf"></li>
    <li class="pdf"></li>
    <li class="pdf"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
    <li class="image"></li>
  </ul>
</div>
...