diff --git a/core/misc/drupal.js b/core/misc/drupal.js
index 5ffd2ed..d7a4e40 100644
--- a/core/misc/drupal.js
+++ b/core/misc/drupal.js
@@ -264,23 +264,18 @@ Drupal.t = function (str, args, options) {
 (function (document, Drupal) {
 
   var liveElement;
-  var ariaLiveAttr;
-  var ariaBusyAttr;
 
+  /**
+   * Builds a div element with the aria-live attribute and attaches it
+   * to the DOM.
+   */
   Drupal.behaviors.drupalAnnounce = {
     attach: function (settings, context) {
       liveElement = document.createElement('div');
       liveElement.id = 'drupal-live-announce';
       liveElement.className = 'element-invisible';
-
-      ariaLiveAttr = document.createAttribute('aria-live');
-      ariaLiveAttr.value = 'polite';
-      liveElement.setAttributeNode(ariaLiveAttr);
-
-      ariaBusyAttr = document.createAttribute('aria-busy');
-      ariaBusyAttr.value = false;
-      liveElement.setAttributeNode(ariaBusyAttr);
-
+      liveElement.setAttribute('aria-live', 'polite');
+      liveElement.setAttribute('aria-busy', 'false');
       document.body.appendChild(liveElement);
     }
   };
@@ -304,7 +299,7 @@ Drupal.t = function (str, args, options) {
    *     $(data.container.el).append(data.items.el);
    *     // Announce the change to the page contents.
    *     Drupal.announce(Drupal.t('@count items added to @container',
-   *       {'@count': data.items.length, '@container': data.container.title);
+   *       {'@count': data.items.length, '@container': data.container.title}
    *     ));
    *   });
    *
@@ -314,29 +309,14 @@ Drupal.t = function (str, args, options) {
     if (typeof text === 'string') {
       // Clear the liveElement so that repeated strings will be read.
       liveElement.innerHTML = '';
-
       // Set the busy state to true until the node changes are complete.
-      ariaBusyAttr.value = true;
-      liveElement.setAttributeNode(ariaBusyAttr);
-
-      // Set the priority to assertive.
-      if (priority === 'assertive' && ariaLiveAttr.value !== 'assertive') {
-        ariaLiveAttr.value = 'assertive';
-        liveElement.setAttributeNode(ariaLiveAttr);
-      }
-      // Set the priority back to 'polite' if it not already and it is not
-      // 'assertive'.
-      else if (ariaLiveAttr.value !== 'polite') {
-        ariaLiveAttr.value = 'polite';
-        liveElement.setAttributeNode(ariaLiveAttr);
-      }
-
+      liveElement.setAttribute('aria-busy', 'true');
+      // Set the priority to assertive, or default to polite.
+      liveElement.setAttribute('aria-live', (priority === 'assertive') ? 'assertive' : 'polite');
       // Print the text to the live region.
       liveElement.innerHTML = Drupal.checkPlain(text);
-
       // The live text area is updated. Allow the AT to announce the text.
-      ariaBusyAttr.value = false;
-      liveElement.setAttributeNode(ariaBusyAttr);
+      liveElement.setAttribute('aria-busy', 'false');
     }
   };
 }(document, Drupal));
