Widget:Teste

De Wiki Gla
Revisão de 02h46min de 14 de agosto de 2025 por Gurren1 (discussão | contribs)
Ir para navegação Ir para pesquisar

<script> (function(){

 var css = ".gx-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:2147483647}"+
           ".gx-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.82)}"+
           ".gx-modal{position:fixed;max-width:min(92vw,1200px);max-height:92vh;background:#000;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.5);overflow:hidden;inset:0;margin:auto}"+
           ".gx-modal img{display:block;max-width:100%;max-height:92vh;height:auto;width:auto}"+
           ".gx-close{position:absolute;top:8px;right:8px;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.38);color:#fff;font-size:22px;line-height:32px;text-align:center;cursor:pointer}"+
           ".gx-close:hover{background:rgba(255,255,255,.25)}"+
           ".gx-open{overflow:hidden!important}"+
           ".gifbox{cursor:pointer;text-decoration:underline;color:#0645ad}"+
           ".gifbox:visited{color:#0b0080}";
 var style = document.createElement("style");
 style.type = "text/css";
 style.appendChild(document.createTextNode(css));
 document.head.appendChild(style);
 var overlay = document.createElement("div");
 overlay.className = "gx-overlay";
 overlay.setAttribute("role","dialog");
 overlay.setAttribute("aria-modal","true");

overlay.innerHTML = '

<button class="gx-close" type="button" aria-label="Fechar">×</button><img id="gx-img" src="" alt="" loading="eager" decoding="async" referrerpolicy="no-referrer">

';

 document.body.appendChild(overlay);
 var backdrop = overlay.querySelector(".gx-backdrop");
 var modal    = overlay.querySelector(".gx-modal");
 var imgEl    = overlay.querySelector("#gx-img");
 var closeEl  = overlay.querySelector(".gx-close");
 var lastActive = null;
 function openBox(url, altText){
   if(!url) return;
   lastActive = document.activeElement;
   document.body.classList.add("gx-open");
   imgEl.src = url;
   imgEl.alt = altText || "";
   overlay.style.display = "flex";
   closeEl.tabIndex = 0;
   closeEl.focus();
 }
 function closeBox(){
   overlay.style.display = "none";
   document.body.classList.remove("gx-open");
   imgEl.src = "";
   imgEl.alt = "";
   if(lastActive && lastActive.focus) lastActive.focus();
 }
 overlay.addEventListener("click", function(e){
   if(e.target === overlay || e.target === backdrop) closeBox();
 });
 closeEl.addEventListener("click", closeBox);
 document.addEventListener("keydown", function(e){ if(e.key === "Escape") closeBox(); });
 document.addEventListener("click", function(e){
   var t = e.target;
   while(t && t !== document){
     if(t.classList && t.classList.contains("gifbox")) break;
     t = t.parentNode;
   }
   if(!t || t === document) return;
   e.preventDefault();
   var url = t.getAttribute("data-gif") || t.getAttribute("href");
   var alt = t.getAttribute("data-alt") || t.textContent.trim();
   if(!url) return;
   openBox(url, alt);
 }, false);

})(); </script>