An other way which makes then your jsfiddle less buggy (needed double click on open).
This doesn’t use any delegated event to body level
Set tabindex="-1"
to DIV .popup ( and for style CSS outline:0
)
$(".link").click(function(e){
e.preventDefault();
$(".popup").fadeIn(300,function(){$(this).focus();});
});
$('.close').click(function() {
$(".popup").fadeOut(300);
});
$(".popup").on('blur',function(){
$(this).fadeOut(300);
});