素材牛VIP会员
element-ui 弹窗组件激活后 覆盖body的 overflow:scroll 属性
 风***飞  分类:JavaScript  人气:1595  回帖:1  发布于6年前 收藏

其实,h很明白这个是js的执行顺序的问题,element-ui是在我的js执行之后给body添加的overflow:hidden,这应该是element-ui忽略的一个问题。希望element-ui在版本更新时候解决一下。
目前我无论如何调整js,都不能再element-ui添加overflow 之后执行我的js

直接上图。



默认状态我给body加入行间样式 overflow-y:scroll !important;
激活组件后,组件给body赋值属性overflow:hidden,去除了滑动条,组件消失之后,此属性去掉,overflow取值应该是 auto。我的属性被替换掉了。
为了解决这个,我直接在组件 的 then(function(){})内部通过js给body赋值 overflow:scroll,赋值失败

讨论这个帖子(1)垃圾回帖将一律封号处理……

Lv5 码农
sh***ao 职业无 6年前#1

js会改变body的行内样式,你可以选择不添加行内样式,而是直接使用内嵌样式或者外部样式呀~

或者通过lockScroll配置项,让MessageBox 出现时不将 body 滚动锁定住~

还或者在配置项的callback里面添加一个1秒的延时操作,在延时操作里面将body的行内样式改成你想要的~

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取