2 To test manually, click on all the form elements (except the textbox) and the details/summary
3 element. The anchor shouldn't be activated (i.e. you shouldn't see any "anchor activated" messages).
4 <a href="javascript:anchorActivated()">
5 <form action="javascript:formSubmitted()">
9 <button>button</button>
11 <button type=reset>button reset</button>
16 <details><summary>summary</summary>details</details>
24 if (window.layoutTestController)
25 layoutTestController.dumpAsText();
27 function log(message) { document.querySelector("pre").innerHTML += message + "\n"; }
28 function formSubmitted() { log("form submitted\n"); }
29 function anchorActivated() { log("anchor activated\n"); }
31 document.forms[0].children[0].value = "blah";
33 for (var i=0; i < document.forms[0].children.length; i++) {
34 var element = document.forms[0].children[i];
36 element.addEventListener("click", function () {
37 log("Activated " + this + " type=" + this.type);
40 if (!window.eventSender)
43 if (element.type == "text") {
44 log("Focusing " + element + " type=" + element.type + " and pressing enter");
46 eventSender.keyDown("\n");
50 eventSender.mouseMoveTo(element.offsetLeft + element.clientWidth / 2, element.offsetTop + element.clientHeight / 2);
51 eventSender.mouseDown();
52 eventSender.mouseUp();
54 if (element.type == "radio" || element.type == "checkbox")
57 log("Focusing " + element + " type=" + element.type + " and pressing enter");
59 eventSender.keyDown("\n");
62 if (window.eventSender) {
63 var details = document.querySelector("details");
64 eventSender.mouseMoveTo(details.offsetLeft + details.clientWidth / 2, details.offsetTop + details.clientHeight / 2);
65 eventSender.mouseDown();
66 eventSender.mouseUp();
67 log("\nThe details element was " + (details.open ? "" : "not ") + "opened");
70 if (window.layoutTestController)
71 document.querySelector("a").style.display = "none";