Ben Alman 플러그에 대한 참조에 추가하여이 작업 예제를 게시하겠다고 생각했습니다. 그것은 jRery 인증을 포함하는 소스 페이지가있는 iframe의 rRelies입니다. & 데이터 쿼리 스크립트는 메시지 플러그인을 사용하여 {other domain} 상위 창으로 결과를 전달합니다. JQ의 V9를 사용하는 JQV9는 플러그인에서 참조 "브라우저"를 사용하지 않는 경우
NB 메시지 플러그인은 중단됩니다
1 단계 : 모두 전송 및 수신 문서에 플러그인 코드를 추가
을 http://benalman.com/projects/jquery-postmessage-plugin/
2 단계 : 보내는 문서에이 추가 :
$.postMessage(
$(X).html(),
'http://DOMAIN [PORT]/FOLDER/SUBFOLDER/RECIEVINGDOCNAME.XXX'
) ;
여기서 X는 미리 포맷 된 json 배열 또는 기타 내용을 포함하는 로컬 변수 일 수 있으며 여기에서 http url은 수신 문서의 주소입니다.
3 단계 : 는 수신 문서에이 추가 :
$.receiveMessage(
function(event){
alert("event.data: "+event.data);
$("#testresults").append('<h1>'+event.data+'<h1>');
},
'http://DOMAIN.COM OR SOMETHING'
);
는 HTTP URL이 전송 문서의 DOMAIN이다. Internet Explorer 8, 9, FF16, Safari Windows (Windows 대기 x V9 아직 테스트하지 않음), Safari x Mac에 좋습니다.
그 결과는 다른 도메인 페이지에서 원하는 항목입니다 (..에 액세스 할 수 있음).
다음은 iframe을 생성하고 액세스하려고 시도하는 코드입니다. jQuery ("body"). prepend (''); var ihistory = jQuery ("# jQuery_history") [0]; var iframe = ihistory.contentWindow.document; – Chris
이 라이브러리는 resize + hash가있는 HTML5 postMessage 및 레거시 브라우저를 지원합니다. https://github.com/ternarylabs/porthole (Ben Alman의 jQuery 플러그인은 3 년 만에 사용되지 않았습니다) – jpillora
Ben Alman은 멋진 jquery 플러그인을 제공합니다. 이 문제를 해결하는 데 사용됩니다. http://benalman.com/projects/jquery-postmessage-plugin/ – Justin