| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| <script> |
| |
| description("This test documents the behavior of MouseEvent.offsetX/Y in response to HTMLElement.click()."); |
| |
| var testDiv = document.createElement("div"); |
| testDiv.setAttribute("style", "background: green; width: 100px; height: 100px; position: absolute; top: 100px; left: 100px;"); |
| document.body.appendChild(testDiv); |
| |
| testDiv.addEventListener("click", function(e) { |
| event = e; |
| shouldBe("event.offsetX", expectedX); |
| shouldBe("event.offsetY", expectedY); |
| }); |
| |
| debug("Simulated click with .click():"); |
| expectedX = "0"; |
| expectedY = "0"; |
| testDiv.click(); |
| |
| if (!window.eventSender) |
| debug("This part of the test requires eventSender!"); |
| else { |
| debug("Click with mouse at 0,0:"); |
| expectedX = "0"; |
| expectedY = "0"; |
| eventSender.mouseMoveTo(100, 100); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| |
| debug("Click with mouse at 40,50:"); |
| expectedX = "40"; |
| expectedY = "50"; |
| eventSender.mouseMoveTo(140, 150); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| } |
| |
| testDiv.remove(); |
| |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |