3

使用jquery,如何设置一个在垂直滚动可见时触发的事件,以及当您从页面的上半部分更改为页面的下半部分时触发的事件,反之亦然。

例如,如果垂直滚动条在那里,然后我正在查看页面上半部分的某个位置,然后向下移动,所以我在页面的下半部分,该功能就会发生。然后,如果我向上移动,所以我再次处于上半部分,该功能就会发生。

谢谢。

4

3 回答 3

4
var midHeight = jQuery(window).height() / 2 //Splits screen in half
$(window).scroll(function () {
    if ($(window).scrollTop() > midHeight) {
        //Do something on bottom
    } else {
        //Do something on top
    }
})
于 2013-08-02T18:48:21.380 回答
1

jQuery 确实有这些可以在元素上使用的方法:

.scrollTop() - 获取视口中元素的顶部滚动位置

.scrollLeft() - 获取视口中元素的左滚动位置

还有滚动事件 - 当视口/元素在另一个(或窗口)内滚动时触发:

。滚动()

于 2013-08-02T18:46:36.717 回答
0
$(window).scroll(function () { 
  if ($(window).scrollTop() > $('body').height() / 2) {
      //code goes here...
  } 
});

检测滚动

var s = $('body').scrollTop();

jQuery滚动顶部()

描述:获取匹配元素集合中第一个元素的滚动条当前垂直位置,或者为每个匹配元素设置滚动条的垂直位置。

您可能有兴趣了解:

$().scrollTop()//how much has been scrolled
$().innerHeight()// inner height of the element
DOMElement.scrollHeight//height of the content of the element

JSFIDDLE 演示

于 2013-08-02T18:50:41.600 回答