60 lines
1.5 KiB
HTML
60 lines
1.5 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<body>
|
|
<script src="../../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
description("Tests that click events still work after a range is disabled while dragging.");
|
|
jsTestIsAsync = true;
|
|
|
|
const input = (that) => {
|
|
if (Math.abs(that.value - 50) === 50)
|
|
that.disabled = true;
|
|
};
|
|
|
|
let buttonClicked = false;
|
|
|
|
function buttonClick()
|
|
{
|
|
buttonClicked = true;
|
|
}
|
|
|
|
onload = function() {
|
|
range = document.querySelector("input");
|
|
|
|
shouldBeFalse("range.disabled");
|
|
|
|
debug("Drag range slider.");
|
|
var centerY = range.offsetTop + range.offsetHeight / 2;
|
|
var centerX = range.offsetLeft + range.offsetWidth / 2;
|
|
var rightEdgeX = range.offsetLeft + range.offsetWidth - 1;
|
|
|
|
eventSender.mouseMoveTo(centerX, centerY);
|
|
eventSender.mouseDown();
|
|
eventSender.mouseMoveTo(rightEdgeX, centerY);
|
|
eventSender.mouseUp();
|
|
|
|
setTimeout(function() {
|
|
shouldBeTrue("range.disabled");
|
|
|
|
debug("Click button");
|
|
button = document.querySelector("button");
|
|
var centerY = button.offsetTop + button.offsetHeight / 2;
|
|
var centerX = button.offsetLeft + button.offsetWidth / 2;
|
|
eventSender.mouseMoveTo(centerX, centerY);
|
|
eventSender.mouseDown();
|
|
eventSender.mouseUp();
|
|
|
|
setTimeout(function() {
|
|
shouldBeTrue("buttonClicked");
|
|
finishJSTest();
|
|
}, 0);
|
|
}, 0);
|
|
}
|
|
</script>
|
|
|
|
<input type="range" oninput="input(this)">
|
|
<button onclick="buttonClick()">Click</button>
|
|
<script src="../../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|