Task Manager: Remove goat teleporter.
[chromium-blink-merge.git] / content / test / data / click-noreferrer-links.html
blob536188e929a172e560cc27a259ee7fd46b1e2a5a
1 <html>
3 <head><title>Click noreferrer links</title>
4 <script>
5 function simulateClick(target) {
6 var evt = document.createEvent("MouseEvents");
7 evt.initMouseEvent("click", true, true, window,
8 0, 0, 0, 0, 0, false, false,
9 false, false, 0, null);
11 return target.dispatchEvent(evt);
14 function clickNoRefTargetBlankLink() {
15 return simulateClick(document.getElementById("noref_and_tblank_link"));
18 function clickSameSiteNoRefTargetedLink() {
19 return simulateClick(
20 document.getElementById("samesite_noref_and_targeted_link"));
23 function clickSameSiteTargetedLink() {
24 return simulateClick(document.getElementById("samesite_targeted_link"));
27 function clickSameSiteTargetBlankLink() {
28 return simulateClick(document.getElementById("samesite_tblank_link"));
31 function clickTargetBlankLink() {
32 return simulateClick(document.getElementById("tblank_link"));
35 function clickNoRefLink() {
36 return simulateClick(document.getElementById("noref_link"));
39 function testScriptAccessToWindow() {
40 // Grab a reference to the existing foo window and access its location.
41 try {
42 var w = window.open("", "foo");
43 var url = w.location.href;
44 return url != undefined;
45 } catch (e) {
46 return false;
50 function testCloseWindow() {
51 // Grab a reference to the existing foo window and close it.
52 var w = window.open("", "foo");
53 w.close();
54 return true;
57 // Listen to incoming messages and reply to them.
58 var receivedMessages = 0;
59 window.addEventListener("message", messageReceived, false);
60 function messageReceived(event) {
61 receivedMessages++;
62 event.source.postMessage(event.data, "*");
65 // Send a message which contains a message port.
66 var mc;
67 function postWithPortToFoo() {
68 mc = new MessageChannel();
69 mc.port1.onmessage = portMessageReceived;
70 mc.port1.start();
71 var w = window.open("", "foo");
72 w.postMessage({message: "msg-with-port", port: mc.port2}, "*", [mc.port2]);
73 return true;
76 var receivedMessagesViaPort = 0;
77 function portMessageReceived(event) {
78 receivedMessagesViaPort++;
79 // Change the title to generate a notification.
80 document.title = event.data;
82 </script>
83 </head>
85 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html"
86 id="noref_and_tblank_link" rel="noreferrer" target="_blank">
87 rel=noreferrer and target=_blank</a><br>
88 <a href="title2.html" id="samesite_noref_and_targeted_link"
89 rel="noreferrer" target="foo">
90 same-site rel=noreferrer and target=foo</a><br>
91 <a href="navigate_opener.html" id="samesite_targeted_link" target="foo">
92 same-site target=foo</a><br>
93 <a href="title2.html" id="samesite_tblank_link" target="_blank">
94 same-site target=_blank</a><br>
95 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="tblank_link"
96 target="_blank">target=_blank</a><br>
97 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="noref_link"
98 rel="noreferrer">rel=noreferrer</a><br>
100 <iframe id="frame1" src="frame_tree/1-1.html"></iframe>
102 </html>