jQuery滚动侦听器无法正常工作,您能告诉我问题出在哪里吗?

时间:2018-11-18 02:09:37

标签: javascript jquery

我现在正试图做的就是获取滚动位置,但由于某种原因它不起作用。

jQuery(document).ready(function() {
  $("#showScroll").html("Scroll = " + "Testing Text");
  jQuery(window).scroll(function() {
    $("#showScroll").html("Scroll = " + $(this).scroll() + " : " + $(this).scrollTop());
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <div>
    <p id="showScroll">Scroll is: </p>
  </div>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
</div>

我也尝试过将滚动侦听器放在文档上,这和div都无济于事。

1 个答案:

答案 0 :(得分:0)

删除$(this).scroll()。您只需要.scrollTop()即可检索滚动偏移量。

jQuery(document).ready(function() {
  $("#showScroll").html("Scroll = " + "Testing Text");
  jQuery(window).scroll(function() {
    $("#showScroll").html("Scroll = " + $(this).scrollTop());
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <div>
    <p id="showScroll">Scroll is: </p>
  </div>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
  <p>random Text</p>
</div>