3 <head><title>Click noreferrer links
</title>
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() {
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.
42 var w
= window
.open("", "foo");
43 var url
= w
.location
.href
;
44 return url
!= undefined;
50 function testCloseWindow() {
51 // Grab a reference to the existing foo window and close it.
52 var w
= window
.open("", "foo");
57 // Listen to incoming messages and reply to them.
58 var receivedMessages
= 0;
59 window
.addEventListener("message", messageReceived
, false);
60 function messageReceived(event
) {
62 event
.source
.postMessage(event
.data
, "*");
65 // Send a message which contains a message port.
67 function postWithPortToFoo() {
68 mc
= new MessageChannel();
69 mc
.port1
.onmessage
= portMessageReceived
;
71 var w
= window
.open("", "foo");
72 w
.postMessage({message
: "msg-with-port", port
: mc
.port2
}, "*", [mc
.port2
]);
76 var receivedMessagesViaPort
= 0;
77 function portMessageReceived(event
) {
78 receivedMessagesViaPort
++;
79 // Change the title to generate a notification.
80 document
.title
= event
.data
;
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>