-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlightbox.js
30 lines (30 loc) · 829 Bytes
/
lightbox.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/**
* Elle permet d'afficher un popup de l'élément passé en paramétre
* @param {HTMLElement} link
*/
function displayImg(link){
let img= new Image();
let overlay=document.getElementById('overlay');
img.onload=()=>{
overlay.innerHTML='';
overlay.appendChild(img);
};
img.src=link.href;
overlay.style.display='block';
overlay.innerHTML=`<span>Chargement...</span>`;
}
document.getElementById('overlay').onclick=()=>{
document.getElementById('overlay').style.display='none';
};
/**
* Les balises contenant les images
* @type {htmlCollection}
*/
let links =document.getElementsByTagName('a');
for(let i=0,linkslen=links.length;i<linkslen;i++){
links[i].onclick=()=>{
//initialisation sur tous les éléments de links
displayImg(links[i]);
return false;//Bloquer la redirection
};
}