@rxap/tree
Version:
This package provides a tree component and data source for Angular applications. It includes features such as searching, filtering, and displaying hierarchical data. The package also offers directives for customizing the content of tree nodes.
45 lines (36 loc) • 1.61 kB
JavaScript
document.addEventListener('DOMContentLoaded', function() {
var lazyGraphs = [].slice.call(document.querySelectorAll('[lazy]'));
var active = false;
var lazyLoad = function() {
if (active === false) {
active = true;
setTimeout(function() {
lazyGraphs.forEach(function(lazyGraph) {
if (
lazyGraph.getBoundingClientRect().top <= window.innerHeight &&
lazyGraph.getBoundingClientRect().bottom >= 0 &&
getComputedStyle(lazyGraph).display !== 'none'
) {
lazyGraph.data = lazyGraph.getAttribute('lazy');
lazyGraph.removeAttribute('lazy');
lazyGraphs = lazyGraphs.filter(function(image) { return image !== lazyGraph});
if (lazyGraphs.length === 0) {
document.removeEventListener('scroll', lazyLoad);
window.removeEventListener('resize', lazyLoad);
window.removeEventListener('orientationchange', lazyLoad);
}
}
});
active = false;
}, 200);
}
};
// initial load
lazyLoad();
var container = document.querySelector('.container-fluid.modules');
if (container) {
container.addEventListener('scroll', lazyLoad);
window.addEventListener('resize', lazyLoad);
window.addEventListener('orientationchange', lazyLoad);
}
});