This question might have been answered here. There might be some potential issues when event propagation is interrupted, as explained by Philip Walton in this post.
A better approach/solution would be to create a custom jQuery event, e.g. clickoutside. Ben Alman has a great post (here) that explains how to implement one (and also explains how special events work), and he's got a nice implementation of it (here).
More reading on jQuery events API and jQuery special events: