gpt4 book ai didi

javascript - 创建全屏弹出窗口并更新滚动条

转载 作者:行者123 更新时间:2023-11-28 14:20:02 24 4
gpt4 key购买 nike

我想使用 CSS 创建一个全屏窗口,我看过 this question .

我的问题是我的全屏窗口很长,我在主页中看到了一个滚动条……是否可以创建一个全屏窗口,让我只看到一个滚动条? (即打开全屏窗口时使用主滚动条)

function toggleWindow() {
$('.fullScreenWindow').toggleClass('show');
}
.fullScreenWindow {
display: none;
}

.fullScreenWindow.show {
background-color: lightgrey;
display: block;
position: fixed;
padding: 10px;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 100;
overflow-x: hidden;
overflow-y: auto;
min-height: 100%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>

<body>
<button onclick="toggleWindow();">toggle window</button>
<div class="fullScreenWindow">
<br/><br/>
<h1> full screen window start</h1>
<br/><br/><br/><br/><br/><br/><br/><br/>
<h3>getting 2 scroll bars</h3>
<br/><br/><br/><br/><br/><br/><br/><br/>
<button onclick="toggleWindow();">close</button>
<h1> full screen window end</h1>
<br/><br/>
</div>
<h4> some long page ...</h4>
<br/><br/><br/><br/>
<h4> some long page ...</h4>
<br/><br/><br/><br/>
<h4> some long page ...</h4>
<br/><br/><br/><br/>
<h4> some long page ...</h4>
<br/><br/><br/><br/>
<h4> some long page ...</h4>
<br/><br/><br/><br/>
</body>
</html>

最佳答案

从逻辑的 Angular 来看

这是一个动态过程,body有滚动条,Full Screen有滚动条,要隐藏body滚动当 Full Screen 显示时栏。所以解决方案有很多,我只是举个例子:

  1. 设置基本样式:
    html, body {
height: 100vh;
width: 100vw;
}
  1. 全屏显示时更改正文滚动条
function toggleWindow() {
$('.fullScreenWindow').toggleClass('show');
$('body').css({"overflow": "hidden"})
}

从实现的 Angular

这是一个很常见的需求,无论你的模态是否全屏,我们网站上的每个提醒模态都有这个功能。有大量库可以做到这一点,例如:

Bootstrapcss风格的框架还有一些非常实用的JS组件

Ant Design,其中包含各种组件。

SweetAlert2 专注于警报组件,

他们有更好的兼容性和风格,你可以试试

关于javascript - 创建全屏弹出窗口并更新滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55309916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com