h5滑动底部兼容安卓
原代码
const handleScroll = () => {
const scrollHeight = document.documentElement.scrollHeight; // 文档高度
const scrollTop = document.documentElement.scrollTop; // 滚动条距离顶部距离
const clientHeight = document.documentElement.clientHeight; // 可见区域高度
if (scrollTop + clientHeight >= scrollHeight - 10) {
// 拉到底部,执行相应的操作
setisBottom(false)
}
};
在安卓手机上,通过document.documentElement.scrollTop
的方式获取滚动条距离顶部的距离可能会出现问题,因为不同的浏览器在处理滚动条操作时可能存在差异。
为了兼容安卓手机
,你可以使用document.documentElement.scrollTop || document.body.scrollTop
来获取滚动条距离顶部的距离。这样在安卓手机上,如果document.documentElement.scrollTop无效,就会使用document.body.scrollTop来获取滚动条的位置。
修复
const handleScroll = () => {
const scrollHeight = document.documentElement.scrollHeight; // 文档高度
const scrollTop = document.documentElement.scrollTop || document.body.scrollTop; // 滚动条距离顶部距离
const clientHeight = document.documentElement.clientHeight; // 可见区域高度
if (scrollTop + clientHeight >= scrollHeight - 10) {
// 拉到底部,执行相应的操作
setisBottom(false)
}
};