OLD | NEW |
1 <html> | 1 <html> |
2 | 2 |
3 <head><title>Click noreferrer links</title> | 3 <head><title>Click noreferrer links</title> |
4 <script> | 4 <script> |
5 function simulateClick(target) { | 5 function simulateClick(target) { |
6 var evt = document.createEvent("MouseEvents"); | 6 var evt = document.createEvent("MouseEvents"); |
7 evt.initMouseEvent("click", true, true, window, | 7 evt.initMouseEvent("click", true, true, window, |
8 0, 0, 0, 0, 0, false, false, | 8 0, 0, 0, 0, 0, false, false, |
9 false, false, 0, null); | 9 false, false, 0, null); |
10 | 10 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 return true; | 50 return true; |
51 } | 51 } |
52 | 52 |
53 // Listen to incoming messages and reply to them. | 53 // Listen to incoming messages and reply to them. |
54 var receivedMessages = 0; | 54 var receivedMessages = 0; |
55 window.addEventListener("message", messageReceived, false); | 55 window.addEventListener("message", messageReceived, false); |
56 function messageReceived(event) { | 56 function messageReceived(event) { |
57 receivedMessages++; | 57 receivedMessages++; |
58 event.source.postMessage(event.data, "*"); | 58 event.source.postMessage(event.data, "*"); |
59 } | 59 } |
| 60 |
| 61 // Send a message which contains a message port. |
| 62 var mc; |
| 63 function postWithPortToFoo() { |
| 64 mc = new MessageChannel(); |
| 65 mc.port1.onmessage = portMessageReceived; |
| 66 mc.port1.start(); |
| 67 var w = window.open("", "foo"); |
| 68 w.postMessage({message: "msg-with-port", port: mc.port2}, "*", [mc.port2]); |
| 69 return true; |
| 70 } |
| 71 |
| 72 var receivedMessagesViaPort = 0; |
| 73 function portMessageReceived(event) { |
| 74 receivedMessagesViaPort++; |
| 75 // Change the title to generate a notification. |
| 76 document.title = event.data; |
| 77 } |
60 </script> | 78 </script> |
61 </head> | 79 </head> |
62 | 80 |
63 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" | 81 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" |
64 id="noref_and_tblank_link" rel="noreferrer" target="_blank"> | 82 id="noref_and_tblank_link" rel="noreferrer" target="_blank"> |
65 rel=noreferrer and target=_blank</a><br> | 83 rel=noreferrer and target=_blank</a><br> |
66 <a href="title2.html" id="samesite_noref_and_targeted_link" | 84 <a href="title2.html" id="samesite_noref_and_targeted_link" |
67 rel="noreferrer" target="foo"> | 85 rel="noreferrer" target="foo"> |
68 same-site rel=noreferrer and target=foo</a><br> | 86 same-site rel=noreferrer and target=foo</a><br> |
69 <a href="navigate_opener.html" id="samesite_targeted_link" target="foo"> | 87 <a href="navigate_opener.html" id="samesite_targeted_link" target="foo"> |
70 same-site target=foo</a><br> | 88 same-site target=foo</a><br> |
71 <a href="title2.html" id="samesite_tblank_link" target="_blank"> | 89 <a href="title2.html" id="samesite_tblank_link" target="_blank"> |
72 same-site target=_blank</a><br> | 90 same-site target=_blank</a><br> |
73 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="tblank_link" | 91 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="tblank_link" |
74 target="_blank">target=_blank</a><br> | 92 target="_blank">target=_blank</a><br> |
75 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="noref_link" | 93 <a href="https://REPLACE_WITH_HOST_AND_PORT/files/title2.html" id="noref_link" |
76 rel="noreferrer">rel=noreferrer</a><br> | 94 rel="noreferrer">rel=noreferrer</a><br> |
77 | 95 |
78 <iframe id="frame1" src="frame_tree/1-1.html"></iframe> | 96 <iframe id="frame1" src="frame_tree/1-1.html"></iframe> |
79 | 97 |
80 </html> | 98 </html> |
OLD | NEW |