关闭褪色的div不起作用

时间:2012-12-10 17:49:37

标签: jquery

我有这样的代码:

$(document).ready( function(){    

$('.cod').click(function() {
var div_name = $(this).attr('id');

$('.overlay_window').load('/templates/' + div_name + '_template.php', function(){
   var div_width = $('#'+div_name+'-overlay').width();
   var div_height = $('#'+div_name+'-overlay').height();
    $('.overlay_window').css("width", ""+div_width+"px")
    $('.overlay_window').css("height", ""+div_height+"px")
    var div2_width = $('.overlay_window').width();
    var div2_height = $('.overlay_window').height();
    var window_width = $(window).width();
    var window_height = $(window).height();

    var widthoffset = (window_width - div2_width) / 2;  
    var heightoffset = (window_height - div2_height) / 2;   
    $('.overlay_window').css("left", "" + (widthoffset) + "px");
    $('.overlay_window').css("top", "" + (heightoffset) + "px");
    $('.overlay_background').fadeIn();
    $('.overlay_window').fadeIn();
  });
});

$('#zamknij').click(function() {
  return false;
  $('.overlay_background').hide();
  $('.overlay_window').hide();
});


});

和HTML

<?php
session_start();
?>
<div id="invite-overlay" style="width:400px; height:200px; ">
Zaproś swojego znajomego do grona <b>Levelowiczów</b>!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:void(0);" id="zamknij" style="color:#aaaaaa; font-family:Bebas; cursor:pointer; text-decoration:none;">X Zamknij</a><br /><br />
Już teraz możesz zaprosić znajomego, aby zarejestrował się z twojego <b>Ref Linku</b>, dzięki czemu uzyskasz punkty, które wymienia się na nagrody w konkursach.<br /><br />
<b>Oto twój link:</b><br />

<input style="width:400px; height:25px; border:none; background:#ffffff; border-top:1px solid #e2e2e2; border-left:1px solid #e2e2e2;" type="text" readonly="readonly" value="<?php echo("http://xxx/register.php?ref_link=" .  $_SESSION['uniq_key'] . ""); ?>">
</div>

我想在点击X Zamknij

时隐藏所有这些内容
$('.overlay_background').hide();
$('.overlay_window').hide();

此部分位于index.php文件中并被隐藏。它是出现在窗口中心的窗口的容器

修改

具有叠加div的部分

<body>
<div class="overlay_background"></div>
<div class="overlay_window"></div>

3 个答案:

答案 0 :(得分:1)

当你在函数中执行return false;时,它会停止执行函数,因此你的return false;需要在函数的末尾,如下所示:

$('#zamknij').click(function() {
  $('.overlay_background').hide();
  $('.overlay_window').hide();
  return false;
});

你应该从你的点击中获得#zamknij的点击处理程序绑定调用,就像我在JSFiddle上一样。

请参阅此JSFiddle以获取实例:http://jsfiddle.net/A6UZ9/2/

答案 1 :(得分:0)

您是否尝试将return false;语句移至#zamknij点击处理程序的底部?它下面的代码无法运行。

答案 2 :(得分:0)

return false移至结尾:

$('#zamknij').click(function() {
  $('.overlay_background').hide();
  $('.overlay_window').hide();
  return false;
});