diff --git a/core/misc/ajax.js b/core/misc/ajax.js
index ec9958d..b726634 100644
--- a/core/misc/ajax.js
+++ b/core/misc/ajax.js
@@ -48,7 +48,7 @@ Drupal.behaviors.AJAX = {
         element_settings.url = $(this).attr('href');
         element_settings.event = 'click';
       }
-      var base = $(this).attr('id');
+      var base = this.id;
       Drupal.ajax[base] = new Drupal.ajax(base, this, element_settings);
     });
 
@@ -67,7 +67,7 @@ Drupal.behaviors.AJAX = {
       // Clicked form buttons look better with the throbber than the progress bar.
       element_settings.progress = { 'type': 'throbber' };
 
-      var base = $(this).attr('id');
+      var base = this.id;
       Drupal.ajax[base] = new Drupal.ajax(base, this, element_settings);
     });
   }
diff --git a/core/misc/autocomplete.js b/core/misc/autocomplete.js
index e5a0892..47f7ac1 100644
--- a/core/misc/autocomplete.js
+++ b/core/misc/autocomplete.js
@@ -18,7 +18,7 @@ Drupal.behaviors.autocomplete = {
       $input.parent()
         .attr('role', 'application')
         .append($('<span class="element-invisible" aria-live="assertive"></span>')
-          .attr('id', $input.attr('id') + '-autocomplete-aria-live')
+          .attr('id', $input.id + '-autocomplete-aria-live')
         );
       new Drupal.jsAC($input, acdb[uri]);
     });
diff --git a/core/misc/vertical-tabs.js b/core/misc/vertical-tabs.js
index 82dcd2c..2291ecd 100644
--- a/core/misc/vertical-tabs.js
+++ b/core/misc/vertical-tabs.js
@@ -124,7 +124,7 @@ Drupal.verticalTab.prototype = {
         .end()
       .show()
       .siblings(':hidden.vertical-tabs-active-tab')
-        .val(this.fieldset.attr('id'));
+        .val(this.fieldset.id);
     this.item.addClass('selected');
     // Mark the active tab for screen readers.
     $('#active-vertical-tab').remove();
diff --git a/core/modules/overlay/overlay-parent.js b/core/modules/overlay/overlay-parent.js
index f2260b3..f8a1489 100644
--- a/core/modules/overlay/overlay-parent.js
+++ b/core/modules/overlay/overlay-parent.js
@@ -925,7 +925,7 @@ Drupal.overlay.makeDocumentTabbable = function (context) {
  */
 Drupal.overlay._recordTabindex = function () {
   var $element = $(this);
-  var tabindex = $(this).attr('tabindex');
+  var tabindex = this.tabIndex;
   $element.data('drupalOverlayOriginalTabIndex', tabindex);
 };
 
diff --git a/core/modules/simpletest/simpletest.js b/core/modules/simpletest/simpletest.js
index 9cab261..5b9b5b8 100644
--- a/core/modules/simpletest/simpletest.js
+++ b/core/modules/simpletest/simpletest.js
@@ -8,7 +8,7 @@ Drupal.behaviors.simpleTestMenuCollapse = {
     var timeout = null;
     // Adds expand-collapse functionality.
     $('div.simpletest-image').each(function () {
-      direction = settings.simpleTest[$(this).attr('id')].imageDirection;
+      direction = settings.simpleTest[this.id].imageDirection;
       $(this).html(settings.simpleTest.images[direction]);
     });
 
@@ -61,8 +61,8 @@ Drupal.behaviors.simpleTestMenuCollapse = {
 Drupal.behaviors.simpleTestSelectAll = {
   attach: function (context, settings) {
     $('td.simpletest-select-all').each(function () {
-      var testCheckboxes = settings.simpleTest['simpletest-test-group-' + $(this).attr('id')].testNames;
-      var groupCheckbox = $('<input type="checkbox" class="form-checkbox" id="' + $(this).attr('id') + '-select-all" />');
+      var testCheckboxes = settings.simpleTest['simpletest-test-group-' + this.id].testNames;
+      var groupCheckbox = $('<input type="checkbox" class="form-checkbox" id="' + this.id + '-select-all" />');
 
       // Each time a single-test checkbox is checked or unchecked, make sure
       // that the associated group checkbox gets the right state too.
@@ -70,7 +70,7 @@ Drupal.behaviors.simpleTestSelectAll = {
         var checkedTests = 0;
         for (var i = 0; i < testCheckboxes.length; i++) {
           $('#' + testCheckboxes[i]).each(function () {
-            if (($(this).attr('checked'))) {
+            if (this.checked) {
               checkedTests++;
             }
           });
@@ -80,7 +80,7 @@ Drupal.behaviors.simpleTestSelectAll = {
 
       // Have the single-test checkboxes follow the group checkbox.
       groupCheckbox.change(function () {
-        var checked = !!($(this).attr('checked'));
+        var checked = !!(this.checked);
         for (var i = 0; i < testCheckboxes.length; i++) {
           $('#' + testCheckboxes[i]).attr('checked', checked);
         }
diff --git a/core/modules/user/user.js b/core/modules/user/user.js
index 042668d..f5ce9d3 100644
--- a/core/modules/user/user.js
+++ b/core/modules/user/user.js
@@ -183,7 +183,7 @@ Drupal.behaviors.fieldUserRegistration = {
     if ($checkbox.length) {
       $('input#edit-instance-required', context).once('user-register-form-checkbox', function () {
         $(this).bind('change', function (e) {
-          if ($(this).attr('checked')) {
+          if (this.checked) {
             $checkbox.attr('checked', true);
           }
         });
