unused vanilla js lightbox, should it ever be needed

This commit is contained in:
Peter Molnar 2019-05-22 20:55:28 +01:00
parent f5297f58c8
commit 6bbeebadd0
2 changed files with 61 additions and 0 deletions

View file

@ -178,7 +178,9 @@
<script>
{% include 'themeswitcher.js' %}
{% include 'konami.js' %}
</script>
{% include 'symbols.svg' %}

59
templates/lightbox.js Normal file
View file

@ -0,0 +1,59 @@
var links2img = []
function initLightbox() {
var links = document.getElementsByTagName("a");
for(var i = links.length; i--; ) {
var imginside = links[i].getElementsByTagName("img");
if (imginside.length == 1 ) {
links2img.push(links[i])
links[i].onclick = openLightbox;
}
}
}
function openLightbox(e) {
var lightbox = document.createElement('div');
lightbox.style.width = "100%";
lightbox.style.height = "100%";
lightbox.style.position = "fixed";
lightbox.style.top = "0";
lightbox.style.left = "0";
lightbox.style.display = "table";
lightbox.style.zIndex = "999";
lightbox.style.backgroundColor = "rgba(0, 0, 0, 0.7)";
lightbox.addEventListener('click', function(){
closeLightbox(lightbox);
});
var fig = document.createElement('figure');
fig.style.display = "table-cell";
fig.style.align = "center";
fig.style.verticalAlign = "middle";
var img = document.createElement('img');
img.src = e.target.parentNode.href;
fig.appendChild(img);
lightbox.appendChild(fig);
var aroot = findLightboxroot(e.target);
aroot.appendChild(lightbox);
return false;
}
function findLightboxroot(e) {
if (e.nodeName == "ARTICLE") {
return e;
}
else {
return findLightboxroot(e.parentNode);
}
}
function closeLightbox(t) {
t.parentNode.removeChild(t);
return false;
}
initLightbox();