Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE html>
<html>
<head>
<title>ARIA 1.0 Live Region Event Test Case: Change text content</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>
div#TEST_ID {
margin: 0.5em;
padding: 0.25em;
border: medium gray solid;
width: 10em;
}
</style>
</head>
<body>
<h1>ARIA 1.0 Live Region Event Test Case: Change text content</h1>
<div id="TEST_ID" aria-live="assertive">
TEST TEXT 1
</div>
<button onclick="tryAgain()">Try Again</button>
<h2>Description</h2>
<p>An element with an aria-live attribute with the value "assertive" has a text content changed
1.5 seconds after the document is loaded.</p>
<h2>Expected Results</h2>
<dl>
<dt>ATK/AT-SPI</dt>
<dd>ATK/AT-SPIevent: text_changed::delete event followed by text_changed::insert event</dd>
<dt>AXAPI</dt>
<dd></dd>
<dd>AXLiveRegionChanged notification</dd>
<dt>MSAA + IAccessible2</dt>
<dd>IAccessible2: IA2_EVENT_TEXT_REMOVED event followed by IA2_EVENT_TEXT_INSERTED event</dd>
<dt>MSAA + UIA Express</dt>
<dd>TextPattern..::.TextChangedEvent event followed by another TextPattern..::.TextChangedEvent event</dd>
</dl>
<script>
function tryAgain() {
changeText('TEST TEXT 1')
onLoad();
}
function changeText(str) {
var node = document.getElementById('TEST_ID');
while (node.firstChild) node.removeChild(node.firstChild);
if (typeof str !== 'string') str = 'changed test text 2';
addText(str)
}
function addText (str) {
var node = document.getElementById('TEST_ID');
var text_node = document.createTextNode(str);
node.appendChild(text_node);
}
function onLoad() {
setTimeout(changeText,1500);
}
window.addEventListener('load', onLoad);
</script>
</body>
</html>