如何在滚动时查看页面上前3个元素的偏移量?我有3个ID #first, #second, #third
的部分,我想在滚动时计算它们在窗口内的偏移量。
我通过ID得到了这些元素:
$scope.first = angular.element(document.querySelector('#first'));
$scope.second = angular.element(document.querySelector('#second'));
但现在我不知道如何检查偏移并根据它将一些变量分配给true / false。提前谢谢!
答案 0 :(得分:0)
您不需要angular.element
。 document.querySelector('#first').offsetTop
是您正在寻找的。如果要在滚动时获取这些值,还需要向窗口scroll
事件添加一个监听器:
const first = document.querySelector('#first');
const second = document.querySelector('#second');
const scrollListener = () => {
console.log(first.offsetTop, second.offsetTop)
};
window.addEventListener('scroll', scrollListener);
// Don't forget to remove listener
$scope.$on('$destroy', () => {
window.removeEventListener(scrollListener);
});
答案 1 :(得分:-1)
$(window).scrollTop()可用于计算用户向下滚动的程度。
{{1}}