我有一个divjQuery的.show()仅适用于一秒钟
<div id="fade_bg">
<div id="login_div">
<form action="../classes/login/Authenticator.php" method="post">
<p>username: <input type="text" name="username" /></p>
<p>password: <input type="password" name="password" /></p>
<p><input type="submit" name="login" /></p>
</form>
<p><a id="cancel" href="#">cancel</a>
</div>
</div>
,我只希望当点击
<a id="login" href="">Admin login</a>
显现。我用
$(function() {
$('a#login').click(function() {
$('#fade_bg').show();
$('#login').hide();
});
$('a#cancel').click(function() {
$('#fade_bg').hide();
$('#login').show();
});
});
然而,当我点击链接,我希望出现在div只出现了一秒钟,然后恢复正常,如果我点击了取消按钮。这是为什么发生?
编辑:JS调试器控制台上没有错误。
替换它相信它喜欢刷新页面年龄。尝试添加'onsubmit =“false”' – 2013-05-08 16:18:38
您需要防止锚点的默认操作。在一些浏览器中,一个空href将重新加载页面,并且一个哈希href将滚动到顶部: – adeneo 2013-05-08 16:18:57
首先我认为在你的调用中使用e.preventDefault是一个好主意,你需要阻止你的默认行为正在推出一些新功能 – Richlewis 2013-05-08 16:19:09