感谢inti的代码我能够找出答案!jquery:div隐藏/显示焦点问题
的jQuery:
$(document).ready(function(){
$("body").click(function(e) {
//checks to see if the tag you clicked has the #login
//div as a parent.
if($(e.target).closest("#login").size() == 0) {
//makes exception for the #login's <a> tag (id of a_login)
if((e.target.id) == 'a_login') {
$("#login").show();
} else {
$("#login").hide();
}
//if target has #login as parent, keep it visible
} else {
$("#login").show();
}
});
});
工作的jsfiddle例如:http://jsfiddle.net/SuperPhil/3CmE7/
谢谢!
我想要登录屏幕类似http://dropbox.com登录。用户点击登录链接并显示div(CSS)并在焦点出现时消失。
这里是我的jQuery
$('#login').bind('click', function() {
$('#login').addClass("clicked").focusout(function() {
$('#login').removeClass('clicked');
});
});
这是行不通的。谁能帮我吗?
编辑:
$('#login').click(function() {
$('#login div').addClass("clicked").blur(function() {
$('#login div').removeClass('clicked');
});
});
给了一个更新,仍然无法正常工作。 – Phil 2011-06-10 17:15:19
您应该在div中的输入字段上设置模糊事件。另外,当您显示div时,请在输入字段上调用.focus(),您需要关注它。 – aorcsik 2011-06-10 17:50:24
但我不想拥有它,因此用户必须选择一个输入框才能看到它。 – Phil 2011-06-10 18:02:05