다른 도메인의 iframe을 포함하는 페이지가 있습니다 (신용 카드 결제). iframe에로드 된 페이지는 onbeforeunload 핸들러를 등록합니다. 즉, 상위 페이지에서 이동하거나 재로드를 시도 할 때마다 사용자에게 확인을 요청합니다. 좋아, 지금까지.원격 iframe에서 미리로드하지 않기
그러나 iframe에서 호출되는 onbeforeunload 핸들러를 호출하지 않고도 작동하는 상위 페이지의 상호 작용이 있어야합니다. 다음은 간단한 예입니다.
<iframe src="https://paymentprovider.com/payment"></iframe>
<a href="/abort_payment">Abort payment (fire onbeforeunload)</a>
<a href="/alternative_payment">I don't have a credit card (suppress onbeforeunload)</a>
iframe이 작동하려면 자바 스크립트가 필요하기 때문에 iframe 샌드 박스를 사용할 수 없습니다. 나는 또한 동적으로 iframe의 샌드 박스 속성을 설정하려고했지만 안정적으로 작동하지 않는 것 같습니다.
iframe = document.getElementById("payment_iframe");
iframe.parentNode.removeChild(iframe)
는 당신이 어떤 문제가 해킹 볼 수 있나요 : 내가 확인 상자를 표시 할 수 있었다
유일한 방법은 링크의 OnClick 핸들러에서 iframe이 제거 있나요? 이것도 작동해야합니까? 같은 것을 성취 할 수있는 더 좋은 방법을 알고 있습니까? 그 첫 번째 장소에서 작업 할 수
감사
내 대답을 확인하십시오. –
좋은 해결 방법과 같은 소리가납니다. –