Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera, estou sentindo a necessidade de fazer o seguinte:
Quero selecionar um elemento que está dentro de um iframe, para que quando este elemento do iframe seja clicado seja executado outra função javascript dentro da pagina 'pai'.
estou usando o seguinte código para isso:
<iframe id="iframee" name="iframee" class="iframee" width="auto" height="auto" frameborder="0" scrolling="yes" src="pagina_iframe.html"></iframe>
<script type="text/javascript">
$(function(){
var els = iframee.document.getElementsByClassName('bp-btn red');
for(var l = 0; l < els.length; l++) {
els[l].onclick=function(event){
///aqui executado oque eu quiser quando o elemento for clicado
}}});
</script>
pagina_iframe.html
<div class="bp-btn red">gttttttttttttttttttt</div>
Isso funciona perfeitamente! Porém se eu quiser colocar dentro do frame uma página de outro site, que não seja do meu site, o código não funciona.
Alguém sabe alguma solução para isso?
Agradeço
Ok,
Valeu.
Isso porque todos navegadores bloqueiam que você execute javascript em outro domínio (por questões de segurança), se você deseja se comunicar com este iframe e tem acesso a ele você pode usar o método window.postMessage
https://imasters.com.br/front-end/html/video-o-nosso-amigo-iframe/
http://davidwalsh.name/window-postmessage
https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage