A library for tracking and reinitializing link-elements and script-elements so that the browser downloads them. Used when developing any dynamic requests via JS where links to third-party documents are supplied along with HTML content.
Go to file
Arsen Mirzaev Tatyano-Muradovich b3de35a1e1 indent_size = 2 2023-10-06 19:30:36 +07:00
.editorconfig indent_size = 2 2023-10-06 19:30:36 +07:00
LICENSE Initial commit 2023-10-02 18:51:40 +07:00
README.md reinitializer.handle(false); 2023-10-06 19:27:47 +07:00
reinitializer.js The argument for preventing downloading 2023-10-06 19:16:58 +07:00

reinitializer.js

A library for tracking and reinitializing <link> and <script> elements so that the browser downloads them.

Used when developing any dynamic requests via JS where links to third-party documents are supplied along with HTML content.

Instruction

By default, the library is observe the first <main> element, but you can reassign it by passing an argument of type {HTMLElement|null} 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.