Na verdade, consegui acionar um link fancyBox apenas de um arquivo JS externo usando o evento "ao vivo":
Primeiro, adicione o evento de clique ao vivo em sua futura âncora dinâmica:
$('a.pub').live('click', function() {
$(this).fancybox(... fancybox parameters ...);
})
Em seguida, anexe a âncora ao corpo:
$('body').append('<a class="iframe pub" href="your-url.html"></a>');
Em seguida, acione o fancyBox clicando na âncora:
$('a.pub').click();
O link fancyBox agora está "quase" pronto. Por que "quase"? Porque parece que você precisa adicionar algum atraso antes de acionar o segundo clique, caso contrário, o script não estará pronto.
É um atraso rápido e sujo usando alguma animação em nossa âncora, mas funciona bem:
$('a.pub').slideDown('fast', function() {
$('a.pub').click();
});
Aqui está, seu fancyBox deve aparecer no carregamento!
HTH