body跟随遮罩层滚动

1. 弹框不在遮罩层中,出现遮罩层和弹框两个区域移动时会造成body滚动(遮罩层位于弹框和body中间层)

1.1设置遮罩区域引起的body滚动

  $(".pop_bg").on('touchmove',function(e){
        e.preventDefault();  //阻止默认行为
    })

1.2 设置弹框区域不会引起body滚动

  $('.betteryBtn').click(function(){     //当点击betteryBtn时显示遮罩层和弹框
       $('.pop_bg').show(); 
       $('.pop_bettery').show(); 
       // 阻止body跟着遮罩层移动
        var isShow=$('.pop_bg').css('display')    //获取弹框状态,若为true则给body设置overflow:hidden。body便不会出现滚动
        console.log(isShow)
        if(isShow === 'block'){
            console.log('sdf')
            $('body').css({'overflow':'hidden'})
        }
    });

  

原文地址:https://www.cnblogs.com/xhrr/p/11302536.html