If you want to use bind and unbind, you would simply bind the event handler when you show the content and unbind it when you hide it, because if it's hidden there is no need to hide it with the mouse.
So, you would do something like:
$('#fakeSelect').click(function(){
if($(this).is(":visible")){
$('body').unbind('mousedown', mouseFunction);
} else {
$('body').uind('mousedown', mouseFunction);
}
});
MouseFunktion would be something like:
var mouseFunction = function(event){
if($(event.target).closest('#fakeSelect').length > 0){
return;
}
$('#fakeSelect').hide();
}
The if statement checks if the click was inside the fakeSelect, in which case you don't want to do anything (either the click event takes care or you want to implement something like to check which element was clicked.
I did a jsfiddle to illustrate the whole point: http://jsfiddle.net/Sgoettschkes/vrnjw/2/