diff --git a/core/misc/ajax.js b/core/misc/ajax.js
index 6ecde95..ce67aa0 100644
--- a/core/misc/ajax.js
+++ b/core/misc/ajax.js
@@ -455,16 +455,16 @@ Drupal.ajax.prototype.beforeSend = function (xmlhttprequest, options) {
if (this.progress.url) {
progressBar.startMonitoring(this.progress.url, this.progress.interval || 1500);
}
- this.progress.element = $(progressBar.element).addClass('ajax-progress ajax-progress-bar');
+ this.progress.$element = progressBar.$element.addClass('ajax-progress ajax-progress-bar');
this.progress.object = progressBar;
- $(this.element).after(this.progress.element);
+ $(this.element).after(this.progress.$element);
}
else if (this.progress.type === 'throbber') {
- this.progress.element = $('
');
+ this.progress.$element = $('');
if (this.progress.message) {
- this.progress.element.find('.throbber').after('' + this.progress.message + '
');
+ this.progress.$element.find('.throbber').after('' + this.progress.message + '
');
}
- $(this.element).after(this.progress.element);
+ $(this.element).after(this.progress.$element);
}
};
@@ -473,8 +473,8 @@ Drupal.ajax.prototype.beforeSend = function (xmlhttprequest, options) {
*/
Drupal.ajax.prototype.success = function (response, status) {
// Remove the progress element.
- if (this.progress.element) {
- $(this.progress.element).remove();
+ if (this.progress.$element) {
+ $(this.progress.$element).remove();
}
if (this.progress.object) {
this.progress.object.stopMonitoring();
@@ -533,8 +533,8 @@ Drupal.ajax.prototype.getEffect = function (response) {
*/
Drupal.ajax.prototype.error = function (response, uri) {
// Remove the progress element.
- if (this.progress.element) {
- $(this.progress.element).remove();
+ if (this.progress.$element) {
+ $(this.progress.$element).remove();
}
if (this.progress.object) {
this.progress.object.stopMonitoring();
diff --git a/core/misc/batch.js b/core/misc/batch.js
index b3013e5..5887730 100644
--- a/core/misc/batch.js
+++ b/core/misc/batch.js
@@ -31,7 +31,7 @@ Drupal.behaviors.batch = {
// Remove HTML from no-js progress bar.
$progress.empty();
// Append the JS progressbar element.
- $progress.append(progressBar.element);
+ $progress.append(progressBar.$element);
}
}
};
diff --git a/core/misc/progress.js b/core/misc/progress.js
index e3e000f..20e9b63 100644
--- a/core/misc/progress.js
+++ b/core/misc/progress.js
@@ -4,13 +4,13 @@
/**
* A progressbar object. Initialized with the given id. Must be inserted into
- * the DOM afterwards through progressBar.element.
+ * the DOM afterwards through ProgressBar.$element.
*
* method is the function which will perform the HTTP request to get the
* progress bar state. Either "GET" or "POST".
*
* e.g. pb = new Drupal.ProgressBar('myProgressBar');
- * some_element.appendChild(pb.element);
+ * some_element.appendChild(pb.$element);
*/
Drupal.ProgressBar = function (id, updateCallback, method, errorCallback) {
this.id = id;
@@ -20,11 +20,19 @@ Drupal.ProgressBar = function (id, updateCallback, method, errorCallback) {
// The WAI-ARIA setting aria-live="polite" will announce changes after users
// have completed their current activity and not interrupt the screen reader.
- this.element = $('').attr('id', id);
- this.element.html('
' +
- '' +
- '' +
- '
');
+ this.$element = $('').attr('id', id);
+ this.$progressLabel = $('
');
+ this.$progressTrack = $('');
+ this.$progressPercentage = $('
');
+ this.$progressDescription = $('
');
+ this.$progressBar = this.$progressTrack.children();
+
+ this.$element
+ .append(this.$progressLabel)
+ .append(this.$progressTrack)
+ .append(this.$progressPercentage)
+ .append(this.$progressDescription);
+
};
$.extend(Drupal.ProgressBar.prototype, {
@@ -33,11 +41,11 @@ $.extend(Drupal.ProgressBar.prototype, {
*/
setProgress: function (percentage, message, label) {
if (percentage >= 0 && percentage <= 100) {
- $(this.element).find('div.progress__bar').css('width', percentage + '%');
- $(this.element).find('div.progress__percentage').html(percentage + '%');
+ this.$progressBar.css('width', percentage + '%');
+ this.$progressPercentage.html(percentage + '%');
}
- $('div.progress__description', this.element).html(message);
- $('div.progress__label', this.element).html(label);
+ this.$progressDescription.html(message);
+ this.$progressLabel.html(label);
if (this.updateCallback) {
this.updateCallback(percentage, message, this);
}
@@ -100,8 +108,8 @@ $.extend(Drupal.ProgressBar.prototype, {
* Display errors on the page.
*/
displayError: function (string) {
- var error = $('').html(string);
- $(this.element).before(error).hide();
+ var errorMarkup = '' + string + '
';
+ this.$element.before(errorMarkup).hide();
if (this.errorCallback) {
this.errorCallback(this);