JQuery encontrar um elemento dentro de Iframe (por seu texto) e adicionando função .click a ele
Pergunta
Eu tenho uma página web (A) e estou a incorporação de (A) para o meu mainpage (B) usando iframe. Este (A) contém um link que fecha a janela do navegador:
<a href="" onclick="window.opener = window;
window.close();
return false;">Close The Page</a>
Desde que eu embedd (A), a capacidade perto em (A) não é mais funcional. O que eu preciso fazer é, quando esse link for clicado a partir de (B), eu quero esconder a minha iframe, em outras palavras, fazer com que pareça fechamento. Então eu tenho que chegar a esse link no iframe e entender se ele é clicado ou não (B)?
Ajuda por favor.
Graças
Solução
Eu estou pensando o seguinte trabalho vontade. Estamos realizando basicamente um "achado" sobre o conteúdo do seu iframe. Uma vez que encontrar o link que queremos, ligar um evento a ele que irá fechar o iframe adequado no documento pai. Note-se que o seu iframe devem estar no mesmo domínio que a página pai, ou você não será capaz de acessar seus elementos. Além disso, eu adicionei uma classe para o link para tornar mais fácil a seleção. Eu sugiro que você também fazer isso.
$("#iframeID").contents().find("a.closeWindow").bind("click", function(){
$("#iframeID", top.document).hide();
});
Se você absolutamente necessário para basear a ligação no texto do link, você terá que percorrer os links para encontrar o correto:
$("a", $("#iframeID").contents()).each(function(){
if ($(this).text() == "Close The Page") {
$(this).bind("click", function() {
$("#iframeID", top.document).hide();
});
}
});