I'm working on a custom search engine for a web app that I'm building. This is the solution I came up with for a similar issue. It works in all browsers to the best of my knowledge.
$( document ).ready(function() {
$( '#inputBox' ).focusout( function() {
$( '#resultsDiv' ).hover(
function() {
return;
},
function() {
$( '#resultsDiv' ).fadeOut( 'slow' );
$( '#resultsDiv' ).html( '' );
});
});
});
I changed the blur method to focusout (has to be all lowercase by the way...focusOut will not work). The .hover event has two conditions; true or false. The first function fires if it's true (if the user is hovering over the results) and the second function fires if the user is NOT hovering over the results.
The only "problem" I've had is that it fades out when the user goes outside of the #resultsDiv. I would add a little bit of clear padding around it to make sure the user doesn't go outside of it on accident.