Ok, so I have a dropdown login box, which uses this code for dropdown:
$('#header #login > a').click(function(){
if($('#header #login').hasClass('open')){
$('#header #login').removeClass('open');
}
else{
$('#header #login').addClass('open');
}
return false;
});
$('#header #login').click(function(){
return false;
});
$(document).click(function(){
$('#header #login').removeClass('open');
});
The only problem is that the return false is breaking the checkbox that I’ve added to the login box…
Anybody know how to fix this?
EDIT: Ok, so the correct way to do this is:
$('#header #login > a').click(function(e){
if($('#header #login').hasClass('open')){
$('#header #login').removeClass('open');
}
else{
$('#header #login').addClass('open');
}
e.preventDefault();
});
$('#header #login').click(function(e){
e.stopPropagation();
});
$(document).click(function(){
$('#header #login').removeClass('open');
});
Read this: http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/