解决jQuery打开或跳转页面隐藏元素闪动问题

有时候一个问题限制了你,往往可以换一种思路


问题如题意,我的大致开发需求是:我有一个写好的页面,在另一个页面用弹窗的方式打开,打开的时候隐藏掉头部和侧边菜单栏

原始做法有bug:在打开时,传值判断是页面来的,还是弹窗来的,如果是弹窗,就给头部和侧边加 .hide() 的方法,问题解决,但是在弹窗加载时,被隐藏的元素会先加载一遍,再隐藏掉。有个闪动的效果,体验感不好。

原因(个人理解):页面进来,首先加载DOM元素,再去调用的的 hide 方法,因此出现先显示,后隐藏的闪动效果

解决办法: 在原始页面上,给之后需要隐藏的元素直接设置 display:none; 的 css 样式,然后在 js 中,用刚刚传值 / 带参的方法去判断是哪个页面,如果是原始页面就让元素 show() 就行啦!

猜你喜欢

转载自blog.csdn.net/qq_44782585/article/details/113180951