关闭js overlay后,我的页面内容被隐藏

时间:2016-11-27 16:31:19

标签: javascript jquery html css

最初显示我的所有网页内容。当我点击名为“关于我们”的按钮(在页脚中)时,我的叠加层会覆盖页面并显示一些信息。当我完成阅读并点击右上角的“X”时,叠加层会关闭(应该这样做)但是我留下了一个没有我内容的网页。现在隐藏了点击“关于我们”按钮之前的相同内容。

为什么会这样?

我的HTML:

function openNav() {
    document.getElementById("myNav").style.height = "100%";
}

function closeNav() {
    document.getElementById("myNav").style.height = "0%";
}

我的JS:

.overlay {
    height: 0%;
    width: 100%;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0, 0.9);
    overflow-y: hidden;
    transition: 0.5s;
}

.overlay-content {
    position: relative;
    top: 25%;
    width: 100%;
    text-align: center;
    margin-top: 30px;
}

.overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 36px;
    color: #818181;
    display: block;
    transition: 0.3s;
}

.overlay a:hover, .overlay a:focus {
    color: #f1f1f1;
}

.overlay .closebtn {
    position: absolute;
    top: 20px;
    right: 45px;
    font-size: 60px;
}

@media screen and (max-height: 450px) {
  .overlay {overflow-y: auto;}
  .overlay a {font-size: 20px}
  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
}

我的CSS:

<div id="content" >

            <!-- Intro -->
            <article id="menu_a">
                <h2>Introduction</h2>
                <figure>
                    <img src="http://placehold.it/150x150" alt="Intro image"/>
                </figure>
                <p>
                some text here bla bla bla....
                </p>
            </article>

</div>

页面上的默认内容:

HTML:

onStop

JSFIDDLE:https://jsfiddle.net/t60623gj/

1 个答案:

答案 0 :(得分:0)

我建议使用jQuery来完成工作,这样会更容易。

有些事情:

$(document).ready(function() {
  $('#footer').click(function() {
    $('#myNav').slideUp();
 });
  $('.closebtn').click(function() {
    $('#myNav').slideDown();
 });
});

取决于您希望导航器完全按照您的要求进行操作。

你的小提琴似乎也有问题 - 它只显示你的页脚。

修改

或者,如果您想操纵元素的height属性,可以使用.animate()

希望这有帮助。