弹窗滚动穿透解决方案

弹窗显示时,获取当前的一个滚动距离,避免设置position时,页面的滚动距离为0

/**
 * 弹窗滚动穿透
 * @param {boolean} status 弹窗显示隐藏
 */
export function scrollProblem(status) {
  // 显示为 false ,隐藏为true
  if (!status) {
    window.MyscrollTop = document.body.scrollTop || document.documentElement.scrollTop;
    document.body.style.cssText += `position:fixed;top:-${window.MyscrollTop}px;`;
  } else {
    const body = document.body;
    body.style.position = 'static';
    document.body.scrollTop = document.documentElement.scrollTop = window.MyscrollTop;
    body.style.top = '';
  }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容