diff --git a/term_reference_tree.js b/term_reference_tree.js
index 61e5ed9..8f0bc3d 100644
--- a/term_reference_tree.js
+++ b/term_reference_tree.js
@@ -114,19 +114,14 @@ Drupal.behaviors.termReferenceTree = {
           var event_target = $(event.target);
           var control_id = event_target.attr('id');
           var children = event_target.parent().next().children().children('div.form-type-checkbox').children('input[id^="' + control_id + '-children"]');
-          if(event_target.attr('checked')) {
             //Checkbox checked - check children if none were checked.
             if(!$(children).filter(':checked').length) {
               $(children).click().trigger('change');
             }
-          }
-          else {
             //Checkbox unchecked. Uncheck children if all were checked.
-            if(!$(children).not(':checked').length) {
+            else if($(children).not(':checked').length == 0) {
               $(children).click().trigger('change');
             }
-          }
-
         });
         //End process checkbox changes.
       } //End Want a cascading checking.
