1.5 KiB
reinitializer.js
If you use AJAX technology, you probably noticed that by passing HTML-code and writing it into a document (for example, via element.outherHTML = someHTML
), browsers does not perform semantic analysis and does not download documents connected using <link>
and <script>
elements.
This program observed <link>
and <script>
elements, and recreates them in the right places so that the browser recognizes and downloads them.
Instruction
By default, observation occurs on the first <main>
element, but you can change this behavior by passing the first argument in {HTMLElement}
format to new e.detail.reinitializer()
document.addEventListener('reinitializer.initialized', function (e) {
// Initialized reinitializer
// Initialize of instance of reinitializer
const reinitializer = new e.detail.reinitializer();
// First reinitialization with prevented downloading
reinitializer.handle(false);
// Start observation
reinitializer.start();
});
By default, after reinitialization, <link>
elements are moved to the end of the <head>
element, and <script>
elements are moved to the end of the <body>
element. You can override this behavior by changing the reinitializer.js
and reinitializer.css
properties.
Arguments
data-reinitializer-ignore="true"
- The program will ignore this elementdata-reinitializer-once="true"
- The program will trigger the download only if there is no duplicate in the registry