Here is a piece of my code that works fine in Chrome and Mozilla. But doesn't work in safari -
Domains are different for parent and iframe. That is, everything should work cross-domain
Parent :
window.addEventListener('message', function(msg) {
jQuery("#iframe-mail_owner").val(msg.data.just);
});
Iframe:
var ifrm=document.createElement("iframe");
ifrm.setAttribute('id','just');
ifrm.setAttribute("src","https://myurl.com");
ifrm.setAttribute("sandbox","allow-same-origin allow-scripts allow-popups allow-forms");
document.body.appendChild(ifrm);
iFrameResize({log:false,checkOrigin:false});
var just=document.getElementById("just").contentWindow;
var data = {just: 'mail@gmail.com'};
ifrm.onload = function() {
setInterval( function(){
just.postMessage(data,'*');
}, 300);
}