32 lines
1.2 KiB
HTML
32 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<style>
|
|
input { padding: 0; margin: 0; border: none; }
|
|
</style>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
|
|
description('This tests focusing an element of zero width or height. WebKit should allow focusing such an element');
|
|
|
|
function insertElement(name, attributes = {})
|
|
{
|
|
const element = document.createElement(name);
|
|
for (const name in attributes)
|
|
element.setAttribute(name, attributes[name]);
|
|
document.body.appendChild(element);
|
|
return element;
|
|
}
|
|
|
|
shouldBe('input = insertElement("input"); input.focus(); document.activeElement', 'input');
|
|
shouldBe('div = insertElement("div", {tabindex: 0}); div.focus(); document.activeElement', 'div');
|
|
shouldBe('zeroWidthInput = insertElement("input", {style: "width: 0px"}); zeroWidthInput.focus(); document.activeElement', 'zeroWidthInput');
|
|
evalAndLog('div.innerHTML = "<svg><a tabindex=0 x=10 y=20><text x=10 y=20></text></a></svg>".replace(/</g, "<"); svgA = div.querySelector("a");');
|
|
shouldBe('svgA.focus(); document.activeElement', 'svgA');
|
|
|
|
successfullyParsed = true;
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|