我使用这些库:
<link rel="stylesheet" href="http://code.jquery.com/mobile/latest/jquery.mobile.css">
<script src="http://code.jquery.com/jquery-1.9.0.min.js"></script>
<script src="http://code.jquery.com/mobile/latest/jquery.mobile.js"></script>
我有一个隐藏的表单,只有在我点击按钮时才显示。但我无法关闭它。
我在互联网上找到了这个例子,我试图在我的页面中实现它。
需要帮助,我已经尝试了很多但没有任何作用。
这是我的代码:
<div id="login-box" class="login-popup">
<a href="#" class="closest"><img src="icon/close_pop.png" class="btn_close" title="Close Window" alt="Close" /></a>
<form method="post" class="signin" action="#">
<legend>Contacto</legend>
<fieldset class="textbox">
<label class="Nome">
<span>Nome</span>
<input id="nome" name="nome" value="" type="text" autocomplete="on" placeholder="Nome">
</label>
<label class="Email">
<span>Email</span>
<input id="email" name="email" value="" type="email" placeholder="nome@dominio.com">
</label>
<label class="Mensagem">
<span>Mensagem</span>
<textarea rows="20" cols="56" name="mensagem" id="comment" id="mensagem" placeholder="A sua mensagem..."></textarea></label>
<button type="submit" class="submitbutton" style="width:80px;height:30px">Enviar</button>
</fieldset>
</form>
</div>
<script type="text/javascript">$(document).ready(function() {
$('a.login-window').click(function() {
//Getting the variable's value from a link
var loginBox = $(this).attr('href');
//Fade in the Popup
$(loginBox).fadeIn(300);
//Set the center alignment padding + border see css style
var popMargTop = ($(loginBox).height() + 24) / 2;
var popMargLeft = ($(loginBox).width() + 24) / 2;
$(loginBox).css({
'margin-top' : -popMargTop,
'margin-left' : -popMargLeft
});
// Add the mask to body
$('body').append('<div id="mask"></div>');
$('#mask').fadeIn(300);
return false;
});
// When clicking on the button close or the mask layer the popup closed
$('a.close, #mask').live('click', function() {
$('#mask , .login-popup').fadeOut(300 , function() {
$('#mask').remove();
});
return false;
});
});
</script>
答案 0 :(得分:1)
你的选择器中有拼写错误;您可能希望将$('a.close, #mask')
更改为$('a.closest, #mask')
。
此外,自jQuery 1.7以来,.live()
已被弃用,而是使用.bind()
。
制作一个JSFiddle:http://jsfiddle.net/fhuNd/
答案 1 :(得分:0)
您没有正确的jquery选择器,即您使用的jquery选择器不指向页面中的任何元素,因此它不起作用。
使用$('a.closest')