<!DOCTYPE html> 
<html>
  <head>
    <title>ARIA 1.0 Test Case 708</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <h1>ARIA 1.0 Test Case 708</h1>
    
    <div id="TEST_ID_1">
    </div>
    
    <h2>Description</h2>
    <p>An element with an aria-live attribute is added to the document by a script during 
      the onload event with the value="assertive" and the element has a child DOM element 
      node that contains text content. After the onload event completes the child DOM 
      element node is deleted.</p>
    
    <script type="text/javascript">  


      function deleteChildNodes() {
        var node  = document.getElementById('TEST_ID_2');  
        while (node.firstChild) node.removeChild(node.firstChild);
      }

      function addLiveRegion() {
        var node         = document.getElementById('TEST_ID_1');  
        
        var live_node = document.createElement('div');
        live_node.setAttribute('aria-live', 'assertive');
        live_node.setAttribute('id', 'TEST_ID_2');

        var element_node = document.createElement('div');
        
        var text_node = document.createTextNode('TEST TEXT');
        
        element_node.appendChild(text_node);
        live_node.appendChild(element_node);
        node.appendChild(live_node);
        
        setTimeout(deleteChildNodes,1000);
      }

      function onload() {
        addLiveRegion();
      }
     
      window.addEventListener('load', onload);
    </script>
  </body>
  
</html>
