modal 遮罩層,滾動穿透 bug


modal 遮罩層,滾動 穿透bug

float 彈層

taro 小程序彈框 滾動擊穿 問題

https://segmentfault.com/q/1010000011134345


solution

disable scroll event

  handleTouchScroll = (flag = `true`) => {
    log(`touch scroll`)
    // if (ENV !== Taro.ENV_TYPE.WEB) {
    //   return
    // }
    document.body.addEventListener(`scroll`, () => {
      log(`no scroll event`)
    });
    let scrollTop = 0;
    if (flag) {
      scrollTop = document.documentElement.scrollTop
      // 使body脫離文檔流
      document.body.classList.add('at-frozen')
      // 把脫離文檔流的body拉上去!否則頁面會回到頂部!
      document.body.style.top = `${-scrollTop}px`
    } else {
      document.body.style.top = null
      document.body.classList.remove('at-frozen')
      document.documentElement.scrollTop = scrollTop
    }
  }


彈框, 無穿透問題

https://taro-ui.jd.com/#/docs/modal

https://github.com/NervJS/taro-ui/tree/dev/src/components/modal

toast

https://taro-ui.jd.com/#/docs/toast


css style

OK

  1. height 100%/ 100vh

  2. overflow hidden

js ??? stop scroll event




Flag Counter

©xgqfrms 2012-2020

www.cnblogs.com 發布文章使用:只允許注冊用戶才可以訪問!



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM