Jquery.live。添加/删除用于登录的类SlideUp/slidedown
好的,我有一个登录表单,我使用Jquery在一个DIV中显示它,该DIV使用.slideUp()和.slideDown()来显示它 如果您单击.account div关闭表单(触发slideup),有人能告诉我为什么表单要进行双泵(slideup、slidedown、slideup)吗 如果我在窗体外单击并div,它将使用以下代码正常关闭Jquery.live。添加/删除用于登录的类SlideUp/slidedown,jquery,Jquery,好的,我有一个登录表单,我使用Jquery在一个DIV中显示它,该DIV使用.slideUp()和.slideDown()来显示它 如果您单击.account div关闭表单(触发slideup),有人能告诉我为什么表单要进行双泵(slideup、slidedown、slideup)吗 如果我在窗体外单击并div,它将使用以下代码正常关闭 $(".modal_div").live("blur", function(){ $(".account").removeClass('ex
$(".modal_div").live("blur", function(){
$(".account").removeClass('expand');
$(this).slideUp();
});
这是我用来滑出/滑下的代码
$(".account").click(function() {
if ($(".account").hasClass("expand")) {
$(".account").removeClass("expand");
$("#accdropdown").slideUp();
} else {
$(".account").addClass("expand");
$("#accdropdown").slideDown();
$("#login-username").focus();
}
});
这是HTML
<div class="account">
<div id="accdropdown" class="modal_div">
<form action="" method="post">
<p>
<label for="login-username">Username</label><br>
<input type="text" name="user_name" tabindex="1" id="login-username">
</p>
<p>
<label for="login-password">Password</label><br>
<input type="password" name="password" tabindex="2" id="login-password">
</p>
<p class="right">
<button type="submit" tabindex="3"><span>Log in</span></button>
</p>
</form>
</div>
<p>Login</p>
</div>
我已经为此绞尽脑汁好几个小时了,非常感谢你的建议……问题是当你打开新输入后点击灰色框时,你的“模糊”会发生什么
首先它会模糊(向上),然后它会运行单击[因为模糊已经运行](它会向下)
现在。。。如何最好地解决这个问题?。。。首先,您可能不想使用模糊,因为当用户填写用户名并点击[tab]时,div就会消失。。。。。。您希望它如何工作 如果您需要它,那么当用户单击“其他地方”时,
.modal\u div
将消失,我将使用覆盖。。这就是一个例子
另外,如果你不需要,你应该避免使用live
已更新 备选案文1: 这会将登录置于覆盖之上。。。如果这是你不想要的,那么使用
选项2:这可能会有所帮助
$(".account").click(function(event) {
$(".account").addClass("expand");
$("#accdropdown").slideDown();
return false;
});
$(document).click(function(event) {
if ( !$(event.target).hasClass('expand')) {
$(".account").removeClass("expand");
$("#accdropdown").slideUp();
}
});
这是小提琴它适用于除div之外的所有东西,div是一个按钮,因此需要再次单击它才能关闭。但是非常接近。感谢添加
cursor:pointer
属性到expand
类,你是在问这个问题吗?当覆盖处于活动状态时,我如何让它在我的原始登录按钮(.account)上显示指针?我希望按钮仍然显示指针光标。除此之外,这真的很有效。谢谢。更新了,你想做什么就做什么
$(".account").click(function(event) {
$(".account").addClass("expand");
$("#accdropdown").slideDown();
return false;
});
$(document).click(function(event) {
if ( !$(event.target).hasClass('expand')) {
$(".account").removeClass("expand");
$("#accdropdown").slideUp();
}
});