95 lines
2.6 KiB
HTML
95 lines
2.6 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<body>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
|
|
<div>
|
|
<a id="link1" href="#">Link</a>
|
|
<button id="button1">Button</button>
|
|
<input id="text1" type="text">
|
|
<input id="checkbox1" type="checkbox">
|
|
<input id="radio1" type="radio">
|
|
<input id="slider1" type="range">
|
|
<input id="submit1" type="submit">
|
|
<select id="combobox1"><option>1<option>2</select>
|
|
<select id="listbox1" multiple><option>1<option>2</select>
|
|
<textarea id="textarea1"></textarea>
|
|
<div id="focusable1" tabindex="0">Focusable</div>
|
|
</div>
|
|
|
|
<canvas id="myCanvas" width="300" height="300">
|
|
<a id="link2" href="#">Link</a>
|
|
<button id="button2">Button</button>
|
|
<input id="text2" type="text">
|
|
<input id="checkbox2" type="checkbox">
|
|
<input id="radio2" type="radio">
|
|
<input id="slider2" type="range">
|
|
<input id="submit2" type="submit">
|
|
<select id="combobox2"><option>1<option>2</select>
|
|
<select id="listbox2" multiple><option>1<option>2</select>
|
|
<textarea id="textarea2"></textarea>
|
|
<div id="focusable2" tabindex="0">Focusable</div>
|
|
</canvas>
|
|
|
|
<canvas hidden id="hiddenCanvas" width="300" height="300">
|
|
<a id="linkInHiddenCanvas" href="#">Link</a>
|
|
</canvas>
|
|
|
|
<div id="console"></div>
|
|
<script>
|
|
description("This test makes sure that focusable elements in canvas fallback content are focusable.");
|
|
|
|
if (window.testRunner)
|
|
window.testRunner.dumpAsText();
|
|
|
|
var element;
|
|
function checkFocusable(id) {
|
|
debug(id + " should be focusable.");
|
|
element = document.getElementById(id);
|
|
element.focus();
|
|
shouldBe("document.activeElement == element", "true");
|
|
debug("");
|
|
}
|
|
|
|
checkFocusable("link1");
|
|
checkFocusable("button1");
|
|
checkFocusable("text1");
|
|
checkFocusable("checkbox1");
|
|
checkFocusable("radio1");
|
|
checkFocusable("slider1");
|
|
checkFocusable("submit1");
|
|
checkFocusable("combobox1");
|
|
checkFocusable("listbox1");
|
|
checkFocusable("textarea1");
|
|
checkFocusable("focusable1");
|
|
|
|
checkFocusable("link2");
|
|
checkFocusable("button2");
|
|
checkFocusable("text2");
|
|
checkFocusable("checkbox2");
|
|
checkFocusable("radio2");
|
|
checkFocusable("slider2");
|
|
checkFocusable("submit2");
|
|
checkFocusable("combobox2");
|
|
checkFocusable("listbox2");
|
|
checkFocusable("textarea2");
|
|
checkFocusable("focusable2");
|
|
|
|
var previousFocusedElement;
|
|
function checkNotFocusable(id) {
|
|
debug(id + " should not be focusable.");
|
|
previousFocusedElement = document.activeElement;
|
|
element = document.getElementById(id);
|
|
element.focus();
|
|
shouldBe("document.activeElement == previousFocusedElement", "true");
|
|
debug("");
|
|
}
|
|
|
|
checkNotFocusable("linkInHiddenCanvas");
|
|
|
|
</script>
|
|
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|