| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <script src="../../resources/js-test.js"></script> |
| </head> |
| <body> |
| <script> |
| |
| description("Test that location.hash is set synchronously even when handling a user gesture (see bug 149415)."); |
| |
| jsTestIsAsync = true; |
| |
| function test() |
| { |
| location.hash = "x"; |
| shouldBe("location.hash", "'#x'"); |
| finishJSTest(); |
| } |
| |
| function clickOn(element) |
| { |
| if (!window.eventSender) |
| return; |
| var rect = element.getBoundingClientRect(); |
| var x = rect.left + rect.width / 2; |
| var y = rect.top + rect.height / 2; |
| eventSender.mouseMoveTo(x, y); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| } |
| |
| onload = function() { |
| clickOn(document.getElementsByTagName("button")[0]); |
| } |
| |
| </script> |
| <button onclick="test()"></button> |
| </body> |
| </html> |