在jQuery中打印.scrollTop的结果

时间:2014-07-25 10:31:03

标签: jquery

当我在页面上下滚动时,我试图在屏幕上显示.scrollTop()函数的值,但我无法让它工作。我显然做了一些愚蠢的事。请赐教。 :)谢谢。

<body>

<div id="myDiv"><p>.....</p></div>
<div id="long"></div>

<script> 

var $myVar = $('#myDiv');
var $myDist = $window.scrollTop();

$window.on('scroll', function(){
    $myVar.text($myDist);
});

</script>
</body>

这是一个小提琴:http://jsfiddle.net/MZBhk/1/

好的,解决方案是缓存窗口,并将.scrollTop()放在花括号内。谢谢您的帮助。 :)

解决方案:

var $window = $(window);
var $myVar = $('#myDiv');
var $myDist = 0;

$window.on('scroll', function(){
    $myDist = $window.scrollTop();
    $myVar.html($myDist);
});

4 个答案:

答案 0 :(得分:1)

而不是$window尝试$(window)并删除$myVar.text('$myDist')中的引号,它应该是$myVar.text($myDist)

这是JsFiddle link

答案 1 :(得分:1)

希望这有帮助

$(window).scroll(function (){
   var scrPos = $(this).scrollTop();
   $('#myDiv').html('your Scroll Position is' + scrPos);
});

这里我得到了滚动位置并将其添加为具有id'#myDiv'的div中的html

这是工作fiddle

有关滚动http://api.jquery.com/scroll/

的详细信息

答案 2 :(得分:0)

您可以在'scroll'事件函数中获取scrollTop的值。 所以你必须这样做:

<body>

  <div id="myDiv"><p>.....</p></div>
  <div id="long"></div>

  <script> 

    var $myVar = $('#myDiv');
    var $myDist = 0;

    $window.on('scroll', function(){
      $myDist = $(this).scrollTop()
      $myVar.text($myDist);
    });

  </script>
 </body>

问候。

答案 3 :(得分:0)

你现在得到什么......首先你不应该在行情中写下你的变量

 $myVar.text($myDist);

而不是

$myVar.text('$myDist');