VUE监听页面滚动到底部

methods:{
	Scrollbottom () { 
		let scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
		let clientHeight = document.documentElement.clientHeight;
		let scrollHeight = document.documentElement.scrollHeight;
		if (scrollTop + clientHeight >= scrollHeight) {
		    console.log("滚动到底部了")
	    }
	},
},
created(){
  window.addEventListener('scroll', this.Scrollbottom);
},
destroyed() { 
  window.removeEventListener('scroll', this.Scrollbottom)//页面离开后销毁监听事件
},

遇到问题可以看我主页加我Q,很少看博客,对你有帮助别忘记点赞收藏

Vue3中,当需要监听页面滚动底部并触发某些操作时,通常会利用`Intersection Observer API`或者简单的JavaScript事件处理。以下是两种常见的实现方式: 1. **使用 Intersection Observer**: 首先,你需要安装 `vue-intersection-observer` 这样的第三方库,它封装了 Intersection Observer 的使用。然后在组件里这样做: ```javascript import { useIntersectionObserver } from 'vue-intersection-observer'; setup() { const ref = ref(null); // 存储节点引用,通常是`<div id="app" ref="appRef">...</div>` const observer = useIntersectionObserver(ref, { rootMargin: '0px', // 观察范围,这里设置成整个视口 threshold: 1.0, // 当元素进入视野的比例达到1.0时触发回调 }); onMounted(() => { if (ref.value) { observer.observe(); } }); watch(() => ref.value, () => { if (ref.value) { observer.start(); } else { observer.unobserve(); } }); return { onBottomReached: () => { // 页面滚动底部时触发的函数,比如加载更多数据 }, }; } ``` 2. **使用 JavaScript 事件监听**: 如果你的项目中不允许引入外部库,也可以直接使用原生的 `window.onscroll` 或者 `window.addEventListener('scroll')`,但是需要注意性能开销和兼容性。 ```javascript mounted() { window.addEventListener('scroll', function () { const bottomOfThePage = document.documentElement.scrollHeight - window.innerHeight <= window.pageYOffset; if (bottomOfThePage) { this.onBottomReached(); } }); }, beforeDestroy() { window.removeEventListener('scroll', handleScroll); }, ``` 在这里,`onBottomReached` 函数同样用于执行你想在页面滚动底部时的操作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值