35 lines
1 KiB
HTML
35 lines
1 KiB
HTML
<html class="test-wait">
|
|
<body></body>
|
|
<script>
|
|
|
|
// Bypass this abandoned syntax in all but the engines that implement it.
|
|
if (typeof getComputedAccessibleNode !== 'undefined') {
|
|
|
|
const frameElem = document.createElement('iframe');
|
|
|
|
frameElem.srcdoc = '<html><head><title>X</title></head><body><div>-</div></body></html>';
|
|
frameElem.onload = function() {
|
|
const frameDoc = frameElem.contentWindow.document;
|
|
|
|
const divElem = frameDoc.querySelector('div');
|
|
|
|
getComputedAccessibleNode(divElem).then(function(divAccessible) {
|
|
// Close window.
|
|
frameElem.remove();
|
|
|
|
requestAnimationFrame(() => {
|
|
// Window removed, but we try to access DOM of non-existent window.
|
|
const isChecked = divAccessible.checked;
|
|
// Test is complete.
|
|
document.documentElement.className = '';
|
|
});
|
|
});
|
|
};
|
|
document.body.appendChild(frameElem);
|
|
|
|
} else {
|
|
// Pass in other engines that have not implemented the abandoned API
|
|
document.documentElement.className = '';
|
|
}
|
|
</script>
|
|
</html>
|