blob: 2380b5044608736c8f532c1eb318e4d25b93b409 [file] [log] [blame]
<!doctype html>
<!-- Sandbox-ed <iframe> which does not allow escaping -->
<iframe id="frame1" allow="sync-xhr 'none'"
sandbox="allow-scripts allow-popups">
</iframe>
<!-- Sandbox-ed <iframe> which allows escaping -->
<iframe id="frame2" allow="sync-xhr 'none'"
sandbox="allow-scripts allow-popups allow-popups-to-escape-sandbox">
</iframe>
<!-- Not sandbox-ed <iframe> -->
<iframe id="frame3" allow="sync-xhr 'none'"></iframe>
<script>
var frame1 = document.getElementById("frame1"),
frame2 = document.getElementById("frame2"),
frame3 = document.getElementById("frame3");
var frame_map = {
"sandboxed": frame1,
"sandboxed-escaping": frame2,
"notsandboxed": frame3,
};
function test(iframe_type, iframe_src, window_url, window_feature) {
var iframe = frame_map[iframe_type];
iframe.src = iframe_src;
// Then message will trigger |window.open| to the url |window_url|.
iframe.addEventListener(
"load", () => iframe.contentWindow.postMessage(
{
window_url: window_url,
window_feature: window_feature
},
"*"));
}
</script>