Как я могу определить, прокручивается ли отделение до нижней части?

Я предлагаю использовать $(this).parent().find('item-price'), потому что он также будет работать, когда позиция HTML-кода изменилась, поэтому лучше использовать это.

$(document).ready(function() {
  $(".item-btn").click(function() {
    $('.item-price').hide();
    $(this).parent().find('.item-price').toggle();
  });
});
li {
  list-style: none;
  background: #ddd;
  margin-bottom: 30px;
  padding: 5px;
}

.item-price {
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div class="main-list">
  <ul class="lict-block">
    <li class="item">
      <div class="item-img"></div>
      <div class="item-content">
        <div class="item-btn">Show Price</div>
        <div class="item-price">
          <h3>23.66</h3>
        </div>
      </div>
    </li>
    <li class="item">
      <div class="item-img"></div>
      <div class="item-content">
        <div class="item-btn">Show Price</div>
        <div class="item-price">
          <h3>23.66</h3>
        </div>
      </div>
    </li>
    <li class="item">
      <div class="item-img"></div>
      <div class="item-content">
        <div class="item-btn">Show Price</div>
        <div class="item-price">
          <h3>23.66</h3>
        </div>
      </div>
    </li>
  </ul>
</div>

61
задан Bjorn 24 March 2010 в 22:23
поделиться

1 ответ

Вы довольно близко используете scrollTop == scrollHeight .

scrollTop относится к верхней части позиции прокрутки, которая будет scrollHeight - offsetHeight

Ваш оператор if должен выглядеть так (не забывайте использовать тройное равенство):

if( obj.scrollTop === (obj.scrollHeight - obj.offsetHeight))
{
}

Изменить: исправил мой ответ, был полностью неверным

76
ответ дан 24 November 2019 в 17:20
поделиться
Другие вопросы по тегам:

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