Бит старого потока, но ...
На самом деле, я подозреваю, что ответ на оригинальный вопрос о том, как закрыть окно из в окне, имеет больше общего с тем фактом, что событие click не привязано к элементу. Если событие click прикреплено в document.ready, событие не будет прикреплено, когда fancybox создаст новое окно.
Вам необходимо повторно применить событие click после появления нового окна. Вероятно, самый простой способ сделать это - использовать функцию onComplete.
Это работает для меня:
$(".popup").fancybox({
'transitionIn' : 'fade',
'transitionOut' : 'elastic',
'speedIn' : 600,
'speedOut' : 400,
'overlayShow' : true,
'overlayColor' : '#000022',
'overlayOpacity' : 0.8,
'onComplete' : function(){$('.closer').click(function(){parent.$.fancybox.close();})}
});
На самом деле, после небольшого количества размышлений «живой», а не «щелчок» или «связывание» может сработать так же хорошо.