| <script> |
| function sayHello() |
| { |
| alert("Hello"); |
| } |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| </script> |
| <div id="description"> |
| This test copies all the elements containing event handlers and javascript urls, pastes them |
| in an editable area and verifies that no script, handlers or javascript urls are copied. |
| </div> |
| <div id="test" > |
| <button id="button1" onclick="sayHello()" ondblclick="sayHello()" style="width: 100px;">Hello</button> |
| <br> |
| <a id="anchor1" href="http://www.cnn.com/">CNN</a> |
| <a id="anchor2" href="javascript:sayHello()">Hello</a> |
| <iframe id="iframe1" src="javascript:var x = 1;" style="width: 200px; height: 100px; background-color:#cee;"></iframe> |
| <iframe id="iframe2" srcdoc="<script>var x = 1;</script>" style="width: 200px; height: 100px; background-color:#cee;"></iframe> |
| <form id="form1" action="javascript:sayHello()" formaction="javascript:sayHello()" style="width: 200px; height: 150px; background-color:#cee;">This is a form<br><img src="../resources/abe.png"></img><button formaction="javascript:sayHello()">Submit.</button></form> |
| </div> |
| <div id="pastehere" contenteditable="true"> |
| </div> |
| <ul id="console"></ul> |
| <script> |
| var s = window.getSelection(); |
| var p1 = document.getElementById("test"); |
| s.setPosition(p1, 0); |
| s.setBaseAndExtent(p1, 0, p1, 14); |
| document.execCommand("Copy"); |
| p1 = document.getElementById("pastehere"); |
| s.setPosition(p1, 0); |
| document.execCommand("Paste"); |
| |
| log(document.getElementById("button1").outerHTML); |
| log(document.getElementById("pastehere").childNodes[0].outerHTML); |
| |
| log(document.getElementById("anchor1").outerHTML); |
| log(document.getElementById("pastehere").childNodes[3].outerHTML); |
| |
| log(document.getElementById("anchor2").outerHTML); |
| log(document.getElementById("pastehere").childNodes[5].outerHTML); |
| |
| log(document.getElementById("iframe1").outerHTML); |
| log(document.getElementById("pastehere").childNodes[7].outerHTML); |
| |
| log(document.getElementById("iframe2").outerHTML); |
| log(document.getElementById("pastehere").childNodes[9].outerHTML); |
| |
| log(document.getElementById("form1").outerHTML); |
| log(document.getElementById("pastehere").childNodes[10].outerHTML); |
| |
| function log(str) { |
| var li = document.createElement("li"); |
| li.appendChild(document.createTextNode(str)); |
| var console = document.getElementById("console"); |
| console.appendChild(li); |
| } |
| </script> |