这里争论的焦点是滚动条。假设我们有一个页面,上面有无数像这样的项目,请注意滚动条;x1c 0d1x现在,点击菜单项后,弹出窗口出现,旧的滚动条消失,新的滚动条出现,正好适合弹出窗口的高度。此外,下面的页面继续保持在它的位置。请注意滚动条。
我如何做到这一点?如果您观察,就会发现滚动条不是两个而是一个。当我尝试它的时候,我得到了双滚动条。一个用于下面的页面,另一个用于弹出窗口。
这里争论的焦点是滚动条。假设我们有一个页面,上面有无数像这样的项目,请注意滚动条;x1c 0d1x现在,点击菜单项后,弹出窗口出现,旧的滚动条消失,新的滚动条出现,正好适合弹出窗口的高度。此外,下面的页面继续保持在它的位置。请注意滚动条。
我如何做到这一点?如果您观察,就会发现滚动条不是两个而是一个。当我尝试它的时候,我得到了双滚动条。一个用于下面的页面,另一个用于弹出窗口。
1条答案
按热度按时间mwkjh3gx1#
这是什么?**
所以,我们做了一个固定位置的叠加,但由于我们需要滚动,我们在CSS中使用
overflow-y:scroll
,并通过设置top,left,bottom and right to 0
将其拉伸到屏幕尺寸。对于CSS中的hidden elements when true, we set the a predefined opacity and z-index
过渡,初始值为-1 and 0
,因此,它在主体后面,根本不可见。同样,当隐藏的元素不再隐藏,aria hidden is false, we change its opacity to 1 and
z-index to 1
,所以它在身体的前面。在Javascript中,我们选择具有覆盖类的容器和所有定义的按钮,这些按钮在变量中调用覆盖类。当单击其中任何一个时,我们将aria-hidden属性设置为
false to display the overlay
,这是一个带有overflow:hidden defined in our CSS is applied on the body
的“noscroll”类,因此它不能滚动。超时功能用于在每次切换点击时设置overlay
scroll to the top
。