1 (() => { 2 let timer = null; 3 4 document.querySelector('.plugin_fulldisplay').addEventListener('click', (e) => { 5 e.preventDefault(); 6 e.stopPropagation(); 7 const page = document.querySelector(JSINFO.fulldisplay.pageSelector); 8 page.requestFullscreen(); 9 page.classList.add('fulldisplay'); 10 page.style.zoom = JSINFO.fulldisplay.zoom; 11 12 if (JSINFO.fulldisplay.refresh) { 13 timer = window.setInterval(async () => { 14 const result = await fetch(window.location.href); 15 if (result.ok) { 16 const text = await result.text(); 17 const parser = new DOMParser(); 18 const doc = parser.parseFromString(text, 'text/html'); 19 page.innerHTML = doc.querySelector(JSINFO.fulldisplay.pageSelector).innerHTML; 20 } 21 }, JSINFO.fulldisplay.refresh * 1000); 22 } 23 }); 24 25 document.addEventListener('fullscreenchange', (e) => { 26 if (document.fullscreenElement) return; 27 28 const page = document.querySelector(JSINFO.fulldisplay.pageSelector); 29 page.classList.remove('fulldisplay'); 30 page.style.zoom = ''; 31 32 if (timer) { 33 window.clearInterval(timer); 34 timer = null; 35 } 36 }); 37 38 })(); 39