0

我正在尝试向网站的主页添加一个自动弹出框。我使用了本网站上一个答案中的代码,如下所示。弹出窗口工作得很好,但你也可以添加一个关闭按钮/链接吗?在此先感谢您的帮助。

Javascript:

<script type="text/javascript">
function show_popup()
{
  document.getElementById('popup').style.display = 'block'; 
}

window.onload = show_popup;
</script>

CSS:

#popup
{
position:absolute;
z-index:99;
display:block;
top:200px;
left:50%;
width:567px;
height:420px; 
margin-left:-250px; 
}

和电话:

<div id="popup">pop up window</div>
4

3 回答 3

1
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'></script>‌    
<div id="popup">
<div id='popup-close'>Close</div>
pop up window
</div>

还有你的 jQuery,

$(document).ready(function()
{
    $('#popup').show('fast'); // This will show the Pop Up in the Page Load
    $('#popup-close').click(function(e) // You are clicking the close button
    {
      $('#popup').hide('fast'); // Now the pop up is hided.
    });
});
于 2013-10-02T00:09:29.503 回答
0

将另一个 div 添加到popup单击时会激活 this的 div 中document.getElementById('popup').style.display = 'none';。您可以relatively将 div 定位到top, right足够简单的位置。

于 2013-10-01T23:50:59.003 回答
0

这是在弹出 div 中使用第二个定位绝对 div 的简单方法。

有很多方法可以改进它并添加更多东西。

function show_popup() {
  document.getElementById('popup').style.display = 'block'; 
}
window.onload = show_popup;
$('.popup-closer').click(function() {
	$('#popup').hide();
});
#popup {
  position: absolute;
  z-index: 99;
  display: block;
  top: 50%; left: 50%; /* if you want to center it do this.. */
  transform: translate(-50%, -50%); /* ..and this */
  width:150px;
  height:225px; 
  color: white;
  background-color: black;
}
.popup-closer {
  position:absolute;
  top: 5px;
  right: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: red;
  border-radius: 20px;
  padding: 5px;
  cursor: pointer;
}
.popup-closer:hover {
  background-color: white;
}




html, body {
  margin: 0; padding: 0;
}
<link href="https://netdna.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="popup">
  pop up window
  <div class="popup-closer"><i class="fa fa-close"></i></div>
</div>

如果您希望每个用户每个会话或每天只显示一次,请查看会话和本地存储。弹出窗口可以首先检查他们的会话存储,如果他们已经在本次会议/这一天/等收到通知,如果是这样,防止他们被显示第二次以上。如果您在站点范围内拥有代码并且您不希望它在每个页面加载时弹出,则同样的交易。

此外,可能想要制作#popup position: fixed;,以便当用户滚动页面时,弹出窗口会一直存在,直到他们确认并关闭它。

小提琴

https://jsfiddle.net/Hastig/au3xm1oy/

和额外的小提琴以获得更多想法

https://jsfiddle.net/Hastig/au3xm1oy/2/

于 2016-08-29T04:12:28.947 回答