<!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 type="text/css"> 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 type="text/javascript"> 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>