diff --git a/djblets/static/djblets/js/datagrid.js b/djblets/static/djblets/js/datagrid.js
index 58994632ac539ab00f8ebf35d70963b690c8e473..84d4933a0f0dfff41f4a8c9dad1253f08b9c3a25 100644
--- a/djblets/static/djblets/js/datagrid.js
+++ b/djblets/static/djblets/js/datagrid.js
@@ -38,25 +38,6 @@ $.fn.datagrid = function(options) {
 
     options = options || {};
 
-    $grid.data('datagrid', this);
-
-    setupHeader();
-
-    /* Register callbacks for the columns. */
-    $menu.find("tr").each(function(i, row) {
-        var className = row.className;
-
-        $(row).find(".datagrid-menu-checkbox, .datagrid-menu-label a")
-            .click(function() {
-                toggleColumn(className);
-            });
-    });
-
-    $(document.body).click(hideColumnsMenu);
-
-    $window.resize(onResize);
-    onResize();
-
 
     /********************************************************************
      * Public methods
@@ -533,6 +514,30 @@ $.fn.datagrid = function(options) {
         }
     }
 
+
+    /********************************************************************
+     * Datagrid initialization
+     ********************************************************************/
+
+    $grid.data('datagrid', this);
+
+    setupHeader();
+
+    /* Register callbacks for the columns. */
+    $menu.find("tr").each(function(i, row) {
+        var className = row.className;
+
+        $(row).find(".datagrid-menu-checkbox, .datagrid-menu-label a")
+            .click(function() {
+                toggleColumn(className);
+            });
+    });
+
+    $(document.body).click(hideColumnsMenu);
+
+    $window.resize(onResize);
+    onResize();
+
     return $grid;
 };
 
diff --git a/djblets/static/djblets/js/extensions/models/extensionManagerModel.js b/djblets/static/djblets/js/extensions/models/extensionManagerModel.js
index 93410d0cdd281763960836c4abd6207c0b72439a..ab7c050181ad1c1d15b9bdebe01bb0f155afc56d 100644
--- a/djblets/static/djblets/js/extensions/models/extensionManagerModel.js
+++ b/djblets/static/djblets/js/extensions/models/extensionManagerModel.js
@@ -160,7 +160,7 @@ InstalledExtensionCollection = Backbone.Collection.extend({
  * functionality for loading the current list from the server.
  */
 Djblets.ExtensionManager = Backbone.Model.extend({
-    initialize: function(attrs, options) {
+    initialize: function() {
         this.installedExtensions = new InstalledExtensionCollection();
     },
 
diff --git a/djblets/static/djblets/js/extensions/views/extensionManagerView.js b/djblets/static/djblets/js/extensions/views/extensionManagerView.js
index 998b5c912297974394a5c47ada8a4522c32ba47d..9e2511aa64265c51a0e2fc0b600f6211912a0edc 100644
--- a/djblets/static/djblets/js/extensions/views/extensionManagerView.js
+++ b/djblets/static/djblets/js/extensions/views/extensionManagerView.js
@@ -52,7 +52,7 @@ InstalledExtensionView = Backbone.View.extend({
         '       <%- databaseText %></a></li>',
         '  <% } %>',
         ' <% } %>',
-        '</ul>',
+        '</ul>'
     ].join('')),
 
     /*
@@ -108,7 +108,7 @@ InstalledExtensionView = Backbone.View.extend({
 
         this.$el
             .removeClass(enabled ? 'disabled' : 'enabled')
-            .addClass(enabled ? 'enabled' : 'disabled')
+            .addClass(enabled ? 'enabled' : 'disabled');
 
         this._$enableToggle
             .text(enabled ? gettext('Disable') : gettext('Enable'))
diff --git a/djblets/static/djblets/js/jquery.gravy.autosize.js b/djblets/static/djblets/js/jquery.gravy.autosize.js
index cee9f6106fc8a3904a0746fd274aa93780cfbdfc..e64302af2bb9333c6c86fc8ef56e9eefaf9c8c79 100644
--- a/djblets/static/djblets/js/jquery.gravy.autosize.js
+++ b/djblets/static/djblets/js/jquery.gravy.autosize.js
@@ -81,7 +81,7 @@ $.widget("ui.autoSizeTextArea", {
                           this.element[0].clientHeight),
             targetHeight;
 
-        if (normHeight != this.element.height()) {
+        if (normHeight !== this.element.height()) {
             /* We know the height grew, so queue a resize. */
             needsResize = true;
             newHeight = normHeight;
diff --git a/djblets/static/djblets/js/jquery.gravy.funcQueue.js b/djblets/static/djblets/js/jquery.gravy.funcQueue.js
index 7013875a99ae2149dfb968bf37e4b1357b73b4d6..1430e4db987c4d05de1033dfd8bfb45d0254956b 100644
--- a/djblets/static/djblets/js/jquery.gravy.funcQueue.js
+++ b/djblets/static/djblets/js/jquery.gravy.funcQueue.js
@@ -23,8 +23,8 @@
 (function($) {
 
 
-var queues = {};
-var queuesInProgress = {};
+var queues = {},
+    queuesInProgress = {};
 
 /*
  * A set of utility functions for implementing a queue of functions.
diff --git a/djblets/static/djblets/js/jquery.gravy.hacks.js b/djblets/static/djblets/js/jquery.gravy.hacks.js
index 6aa7ffeb77896c26305694fd459ebfed9568f473..43299959e80026eb59c94f9d7367de706d65fe9a 100644
--- a/djblets/static/djblets/js/jquery.gravy.hacks.js
+++ b/djblets/static/djblets/js/jquery.gravy.hacks.js
@@ -32,7 +32,9 @@
  */
 $.fn.old_html = $.fn.html;
 $.fn.html = function(value) {
-    var removePre = false;
+    var removePre = false,
+        ret,
+        preTag;
 
     if ($.browser.msie && value !== undefined && this[0] &&
         /^(pre|textarea)$/i.test(this[0].tagName)) {
@@ -40,10 +42,10 @@ $.fn.html = function(value) {
         removePre = true;
     }
 
-    var ret = this.old_html.apply(this, value === undefined ? [] : [value]);
+    ret = this.old_html.apply(this, value === undefined ? [] : [value]);
 
     if (removePre) {
-        var preTag = this.children();
+        preTag = this.children();
         preTag.replaceWith(preTag.contents());
     }
 
diff --git a/djblets/static/djblets/js/jquery.gravy.inlineEditor.js b/djblets/static/djblets/js/jquery.gravy.inlineEditor.js
index ffe811c3626309ad6192d1bef662b8f533e7b175..bc3c4960e6bbc3ee5a040b84d672367a5db08282 100644
--- a/djblets/static/djblets/js/jquery.gravy.inlineEditor.js
+++ b/djblets/static/djblets/js/jquery.gravy.inlineEditor.js
@@ -46,7 +46,7 @@ $.widget("ui.inlineEditor", {
         startOpen: false,
         stripTags: false,
         useEditIconOnly: false,
-        createMultilineField: function(editor) {
+        createMultilineField: function(/* editor */) {
             return $("<textarea/>").autoSizeTextArea();
         },
         setFieldValue: function(editor, value) {
@@ -67,7 +67,10 @@ $.widget("ui.inlineEditor", {
 
     _create: function() {
         /* Constants */
-        var self = this;
+        var self = this,
+            saveButton,
+            cancelButton,
+            isDragging;
 
         /* State */
         this._initialValue = null;
@@ -117,15 +120,13 @@ $.widget("ui.inlineEditor", {
              */
             this._buttons.hide();
 
-            var saveButton =
-                $('<input type="button"/>')
+            saveButton = $('<input type="button"/>')
                 .val(gettext("OK"))
                 .addClass("save")
                 .appendTo(this._buttons)
                 .click(function() { self.submit(); });
 
-            var cancelButton =
-                $('<input type="button"/>')
+            cancelButton = $('<input type="button"/>')
                 .val(gettext("Cancel"))
                 .addClass("cancel")
                 .appendTo(this._buttons)
@@ -178,7 +179,7 @@ $.widget("ui.inlineEditor", {
              * Check if the mouse was dragged, so the editor isn't opened when
              * text is selected.
              */
-            var isDragging = true;
+            isDragging = true;
 
             this.element
                 .on('click', 'a', function(e) {
@@ -273,7 +274,7 @@ $.widget("ui.inlineEditor", {
             .keypress(function(e) {
                 e.stopPropagation();
             })
-            .keyup(function(e) {
+            .keyup(function() {
                 self._updateDirtyState();
             });
     },
diff --git a/djblets/static/djblets/js/jquery.gravy.modalBox.js b/djblets/static/djblets/js/jquery.gravy.modalBox.js
index 852e8f3b2a8b2f305f6ece32cd285a762912faac..af4b079bc67306cdc0a88a35564078a581b64dde 100644
--- a/djblets/static/djblets/js/jquery.gravy.modalBox.js
+++ b/djblets/static/djblets/js/jquery.gravy.modalBox.js
@@ -91,7 +91,7 @@ $.widget("ui.modalBox", {
             .addClass(this.options.modalBoxButtonsClass)
             .click(function(e) {
                 /* Check here so that buttons can call stopPropagation(). */
-                if (e.target.tagName == "INPUT" && !e.target.disabled) {
+                if (e.target.tagName === "INPUT" && !e.target.disabled) {
                     self.element.modalBox("destroy");
                 }
             });
@@ -116,8 +116,9 @@ $.widget("ui.modalBox", {
     destroy: function() {
         var self = this;
 
-        if (!this.element.data("modalBox"))
+        if (!this.element.data("modalBox")) {
             return;
+        }
 
         this.element
             .removeData("modalBox")
@@ -142,10 +143,10 @@ $.widget("ui.modalBox", {
     },
 
     resize: function() {
-        var marginHoriz = $("body").getExtents("m", "lr");
-        var marginVert  = $("body").getExtents("m", "tb");
-        var winWidth    = $(window).width()  - marginHoriz;
-        var winHeight = $(window).height() - marginVert;
+        var marginHoriz = $("body").getExtents("m", "lr"),
+            marginVert = $("body").getExtents("m", "tb"),
+            winWidth = $(window).width()  - marginHoriz,
+            winHeight = $(window).height() - marginVert;
 
         if (this.options.stretchX) {
             this.box.width(winWidth -
diff --git a/djblets/static/djblets/js/jquery.gravy.retina.js b/djblets/static/djblets/js/jquery.gravy.retina.js
index efa99688ee5e129bfafb4a0f93723dadd590c9ed..ff60bc65128a695e5d243dcc7df4aa06ad5fe67c 100644
--- a/djblets/static/djblets/js/jquery.gravy.retina.js
+++ b/djblets/static/djblets/js/jquery.gravy.retina.js
@@ -35,7 +35,7 @@ $.fn.retinaGravatar = function() {
                 baseurl,
                 size;
 
-            if (parts.length == 2) {
+            if (parts.length === 2) {
                 baseurl = parts[0];
                 size = parseInt(parts[1], 10);
 
diff --git a/djblets/static/djblets/js/jquery.gravy.util.js b/djblets/static/djblets/js/jquery.gravy.util.js
index 097f993559da16a404c32a42eefa920e86973db9..8745cd072f801ddde737ed8aa3f37b8d03b97d91 100644
--- a/djblets/static/djblets/js/jquery.gravy.util.js
+++ b/djblets/static/djblets/js/jquery.gravy.util.js
@@ -74,22 +74,25 @@ $.fn.extend({
      * @return {jQuery} This jQuery.
      */
     scrollIntoView: function() {
+        var $document = $(document),
+            $window = $(window);
+
         return $(this).each(function() {
-            var offset = $(this).offset();
-            var scrollLeft = $(document).scrollLeft();
-            var elLeft = (scrollLeft + $(window).width()) -
-                         (offset.left + $(this).outerWidth(true));
+            var $this = $(this),
+                offset = $this.offset(),
+                scrollLeft = $document.scrollLeft(),
+                scrollTop = $document.scrollTop(),
+                elLeft = (scrollLeft + $window.width()) -
+                         (offset.left + $this.outerWidth(true)),
+                elTop = (scrollTop + $window.height()) -
+                         (offset.top + $this.outerHeight(true));
 
             if (elLeft < 0) {
-                $(window).scrollLeft(scrollLeft - elLeft);
+                $window.scrollLeft(scrollLeft - elLeft);
             }
 
-            var scrollTop = $(document).scrollTop();
-            var elTop = (scrollTop + $(window).height()) -
-                        (offset.top + $(this).outerHeight(true));
-
             if (elTop < 0) {
-                $(window).scrollTop(scrollTop - elTop);
+                $window.scrollTop(scrollTop - elTop);
             }
         });
     }
@@ -99,40 +102,45 @@ $.fn.getExtents = function(types, sides) {
     var val = 0;
 
     this.each(function() {
-        var self = $(this);
+        var self = $(this),
+            type,
+            side,
+            prop,
+            t,
+            s,
+            i;
 
-        for (var t = 0; t < types.length; t++) {
-            var type = types.charAt(t);
+        for (t = 0; t < types.length; t++) {
+            type = types.charAt(t);
 
-            for (var s = 0; s < sides.length; s++) {
-                var side = sides.charAt(s);
-                var prop;
+            for (s = 0; s < sides.length; s++) {
+                side = sides.charAt(s);
 
-                if (type == "b") {
+                if (type === "b") {
                     type = "border";
-                } else if (type == "m") {
+                } else if (type === "m") {
                     type = "margin";
-                } else if (type == "p") {
+                } else if (type === "p") {
                     type = "padding";
                 }
 
-                if (side == "l" || side == "left") {
+                if (side === "l" || side === "left") {
                     side = "Left";
-                } else if (side == "r" || side == "right") {
+                } else if (side === "r" || side === "right") {
                     side = "Right";
-                } else if (side == "t" || side == "top") {
+                } else if (side === "t" || side === "top") {
                     side = "Top";
-                } else if (side == "b" || side == "bottom") {
+                } else if (side === "b" || side === "bottom") {
                     side = "Bottom";
                 }
 
                 prop = type + side;
 
-                if (type == "border") {
+                if (type === "border") {
                     prop += "Width";
                 }
 
-                var i = parseInt(self.css(prop), 10);
+                i = parseInt(self.css(prop), 10);
 
                 if (!isNaN(i)) {
                     val += i;
@@ -209,13 +217,13 @@ $.fn.positionToSide = function(el, options) {
             left = null;
             top = null;
 
-            if (side == "t") {
+            if (side === "t") {
                 top = offset.top - thisHeight - options.yDistance;
-            } else if (side == "b") {
+            } else if (side === "b") {
                 top = offset.top + elHeight + options.yDistance;
-            } else if (side == "l") {
+            } else if (side === "l") {
                 left = offset.left - thisWidth - options.xDistance;
-            } else if (side == "r") {
+            } else if (side === "r") {
                 left = offset.left + elWidth + options.xDistance;
             } else {
                 continue;
@@ -272,9 +280,10 @@ $.fn.proxyTouchEvents = function(events) {
     events = events || "touchstart touchmove touchend";
 
     return $(this).bind(events, function(event) {
-        var touches = event.originalEvent.changedTouches;
-        var first = touches[0];
-        var type = "";
+        var touches = event.originalEvent.changedTouches,
+            first = touches[0],
+            type = "",
+            mouseEvent;
 
         switch (event.type) {
         case "touchstart":
@@ -290,7 +299,7 @@ $.fn.proxyTouchEvents = function(events) {
             break;
         }
 
-        var mouseEvent = document.createEvent("MouseEvent");
+        mouseEvent = document.createEvent("MouseEvent");
         mouseEvent.initMouseEvent(type, true, true, window, 1,
                                   first.screenX, first.screenY,
                                   first.clientX, first.clientY,
@@ -345,7 +354,7 @@ $.extend(String.prototype, {
             str = this.substring(0, numChars - 3); // minus length of "..."
             i = str.lastIndexOf(".");
 
-            if (i != -1) {
+            if (i !== -1) {
                 str = str.substring(0, i + 1);
             }
 
