summaryrefslogtreecommitdiffstatshomepage
path: root/core/misc/drupal.init.js
diff options
context:
space:
mode:
Diffstat (limited to 'core/misc/drupal.init.js')
-rw-r--r--core/misc/drupal.init.js23
1 files changed, 13 insertions, 10 deletions
diff --git a/core/misc/drupal.init.js b/core/misc/drupal.init.js
index be0cae2fcdd..c3d961550d5 100644
--- a/core/misc/drupal.init.js
+++ b/core/misc/drupal.init.js
@@ -1,23 +1,25 @@
-/**
-* DO NOT EDIT THIS FILE.
-* See the following change record for more information,
-* https://www.drupal.org/node/2815083
-* @preserve
-**/
-
+// Allow other JavaScript libraries to use $.
if (window.jQuery) {
jQuery.noConflict();
}
+// Class indicating that JS is enabled; used for styling purpose.
document.documentElement.className += ' js';
+// JavaScript should be made compatible with libraries other than jQuery by
+// wrapping it in an anonymous closure.
(function (Drupal, drupalSettings) {
- const domReady = callback => {
+ /**
+ * Calls callback when document ready.
+ *
+ * @param {function} callback
+ * The function to be called on document ready.
+ */
+ const domReady = (callback) => {
const listener = () => {
callback();
document.removeEventListener('DOMContentLoaded', listener);
};
-
if (document.readyState !== 'loading') {
setTimeout(callback, 0);
} else {
@@ -25,7 +27,8 @@ document.documentElement.className += ' js';
}
};
+ // Attach all behaviors.
domReady(() => {
Drupal.attachBehaviors(document, drupalSettings);
});
-})(Drupal, window.drupalSettings); \ No newline at end of file
+})(Drupal, window.drupalSettings);