61 lines
2.2 KiB
HTML
61 lines
2.2 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body id="body">
|
|
|
|
<label id="label1" for="input" aria-label="aria label">Some text</label>
|
|
<input id="input" type="text" size=20>
|
|
|
|
<label id="label2" for="input2">Some other text</label>
|
|
<input id="input2" type="text" size=20>
|
|
|
|
<label id="label3" for="input3" hidden aria-label="hidden aria label">hidden text</label>
|
|
<input id="input3" type="text">
|
|
|
|
<p id="p1">aria</p>
|
|
<p id="p2">labelledby</p>
|
|
<label for="input4" aria-labelledby="p1 p2">Some text</label>
|
|
<input id="input4" type="text" size=20>
|
|
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
|
|
description("This tests that the aria-label attribute works on <label> element.");
|
|
|
|
if (window.accessibilityController) {
|
|
|
|
// aria-label on the <label> element return a title for the input, instead of a title ui element.
|
|
// For ATK, it should return both, with the title ui element being the label element.
|
|
var input1 = accessibilityController.accessibleElementById("input");
|
|
var titleUIElement1 = input1.titleUIElement();
|
|
if (accessibilityController.platformName != "atk")
|
|
shouldBeTrue("!titleUIElement1");
|
|
else
|
|
shouldBeTrue("titleUIElement1.isEqual(accessibilityController.accessibleElementById('label1'))");
|
|
|
|
shouldBe("input1.title", "'AXTitle: aria label'");
|
|
|
|
// Normal case.
|
|
var input2 = accessibilityController.accessibleElementById("input2");
|
|
var titleUIElement2 = input2.titleUIElement();
|
|
shouldBeTrue("titleUIElement2.isEqual(accessibilityController.accessibleElementById('label2'))");
|
|
|
|
// Make sure when the input element has no rendered label, it won't cause crash.
|
|
var input3 = accessibilityController.accessibleElementById("input3");
|
|
shouldBe("input3.title", "'AXTitle: hidden aria label'");
|
|
|
|
// aria-labelledby also works.
|
|
var input4 = accessibilityController.accessibleElementById("input4");
|
|
shouldBe("input4.title", "'AXTitle: aria labelledby'");
|
|
}
|
|
|
|
</script>
|
|
|
|
<script src="../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|