diff --git a/admin_menu.js b/admin_menu.js
old mode 100644
new mode 100755
index de0bb90..39ca807
--- a/admin_menu.js
+++ b/admin_menu.js
@@ -69,6 +69,16 @@ Drupal.behaviors.adminMenuCollapseModules = {
 Drupal.behaviors.adminMenuCollapsePermissions = {
   attach: function (context, settings) {
     if (settings.admin_menu.tweak_permissions) {
+      var restripe = false, // Prevent table from being restriped on startup.
+          restripeTable = function () {
+            if (!restripe) {
+              return;
+            }
+            $('> tbody > tr:visible, > tr:visible', $('#permissions', context))
+              .removeClass('odd even')
+              .filter(':odd').addClass('even').end()
+              .filter(':even').addClass('odd');
+          };
       // Freeze width of first column to prevent jumping.
       $('#permissions th:first', context).css({ width: $('#permissions th:first', context).width() });
       // Attach click handler.
@@ -83,6 +93,7 @@ Drupal.behaviors.adminMenuCollapsePermissions = {
             }
             $row.toggleClass('element-hidden');
           });
+          restripeTable();
         });
       });
       // Collapse all but the targeted permission rows set.
@@ -90,6 +101,9 @@ Drupal.behaviors.adminMenuCollapsePermissions = {
         $modules = $modules.not(':has(' + window.location.hash + ')');
       }
       $modules.trigger('click.admin-menu');
+      // Restripe table only once at startup.
+      restripe = true;
+      restripeTable();
     }
   }
 };
