如何弹出“div”元素并使屏幕变暗?

时间:2017-01-28 01:35:05

标签: javascript html css

好吧,我一直在寻找几个网站,this是最接近我想要的,有点。

我想要一个按钮来显示div,(我可以通过我的剧透代码执行此操作), 然后我想要同样的按钮来调暗屏幕,就像在上面的链接,现在我不能做什么。这是一个切换按钮。我可能会遗漏一些基本的东西,但我不知道。

下面我有一个带有按钮的html,它会显示一个带有“你好”的div,我想要它当弹出“你好”它会使屏幕变暗,但再次按下按钮(或者)点击div,将再次将屏幕恢复正常。

这是我的代码:

<!DOCTYPE html>
<html>
<head>
  <title></title>
</head>
<body>
  <button onclick="if(document.getElementById('spoiler-') .style.display=='none') {document.getElementById('spoiler-') .style.display=''}else{document.getElementById('spoiler-') .style.display='none'}">Spoiler</button>
  <div id="spoiler-" style="display:none">
    <p style="border: 2px solid gray;">Hello!</p>
  </div>
</body>
</html>

感谢您花时间阅读本文。希望尽快解决这个问题&gt; _&lt;

1 个答案:

答案 0 :(得分:1)

在开始之前,我想提醒您不要使用内联JS或CSS,这是不好的做法,不是很容易阅读,你应该总是分开你的HTML,CSS&amp; JS。

现在回答你的问题,你可能想看看这个名为BootStrap的非常简洁的框架,而不是重新发明轮子。

在头文件中添加以下链接和脚本:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" />
<!-- We need jQuery to make bootstrap.min.js work -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

以下是BootStrap模式的一个工作示例:

&#13;
&#13;
$("#myModal").on("show.bs.modal", function(event) {
  console.log("Modal has been shown, do something amazing now!");
});
&#13;
.modal-backdrop {
  background-color: #333;
}
&#13;
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" />
<!-- We need jQuery to make bootstrap.min.js work -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<button class="btn btn-primary btn-lg" data-target="#myModal" data-toggle="modal" id="modalOne">Button</button>
<!-- Modal -->
<div aria-hidden="true" aria-labelledby="myModalLabel" class="modal fade" id="myModal" role="dialog" tabindex="-1">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button class="close" data-dismiss="modal" type="button">
          <span aria-hidden="true">&times;</span> <span class="sr-only">Close</span>
        </button>
        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
      </div>
      <div class="modal-body">
        lorem lorem lorem lorem lorem lorem lorem lorem lorem lorem lorem.
      </div>
      <div class="modal-footer">
        <button class="btn btn-default" data-dismiss="modal" type="button">Close</button>
        <button class="btn btn-primary" type="button">OK</button>
      </div>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;

您还可以通过更改CSS中background-color类下面的.modal-backdrop属性来更改背景颜色。

如果您需要BootStrap的额外帮助,可以前往here开始使用BootStrap。

祝你好运,一切顺利。