一些业务场景,如弹框出现时,需要禁止页面滚动,这是兼容安卓和 iOS 禁止页面滚动的解决方案。
该函数返回另一个函数闭包,其存储了当前页面滚动位置,再次执行可以恢复页面状态。 恢复函数会把 overflowY 改回 auto、position 改回 static,如果调用前页面本身有特殊 body 样式,需要调用方自行保留。
overflowY
auto
position
static
恢复页面滚动状态的函数
0.0.1
// ...用户执行一些操作,弹出弹框// 禁止页面滚动const reverseScroll = preventScroll();// ...用户操作完毕,弹框关闭,页面恢复// 恢复页面滚动reverseScroll(); Copy
// ...用户执行一些操作,弹出弹框// 禁止页面滚动const reverseScroll = preventScroll();// ...用户操作完毕,弹框关闭,页面恢复// 恢复页面滚动reverseScroll();
一些业务场景,如弹框出现时,需要禁止页面滚动,这是兼容安卓和 iOS 禁止页面滚动的解决方案。
该函数返回另一个函数闭包,其存储了当前页面滚动位置,再次执行可以恢复页面状态。 恢复函数会把
overflowY改回auto、position改回static,如果调用前页面本身有特殊 body 样式,需要调用方自行保留。