PageSourceSearch

https://www.ucam.edu/sites/default/files/js/optimized/js_nEWAE9e7y…uI3e0qLFisHJPt4NYvf-a09G_m8mBjrnM.js?tlrvto

js ucam.edu collected 2026-09-24 08:52:04 UTC 2,196 bytes, 7 lines download raw bytes

1document.addEventListener("DOMContentLoaded",(e)=>{const modalsLaunchersList=document.querySelectorAll("[data-modal]");modalsLaunchersList.forEach(function(trigger){trigger.addEventListener("click",function(event){event.preventDefault();const triggerElement=trigger;const sectionSoliInfoMobile=document.getElementById("buttonSoliInfoMobile",);if(sectionSoliInfoMobile){if(sectionSoliInfoMobile.style.bottom=="0px"){sectionSoliInfoMobile.style.bottom="-81px";}}
2const modal=document.getElementById(trigger.dataset.modal);modal.classList.add("show");const firstFocusable=modal.querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])',);if(firstFocusable)firstFocusable.focus();const isVideoModal=modal.querySelector("iframe");blockBody(modal,true);function trapFocus(event){if(event.key!=="Tab")return;const focusables=Array.from(modal.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])',),).filter((el)=>!el.disabled);const first=focusables[0];const last=focusables[focusables.length-1];if(event.shiftKey){if(document.activeElement===first){event.preventDefault();last.focus();}}else{if(document.activeElement===last){event.preventDefault();first.focus();}}}
3document.addEventListener("keydown",trapFocus);const closeModalButtons=modal.querySelectorAll(".modal-exit");function exitModal(event){event.preventDefault();modal.classList.remove("show");if(isVideoModal){isVideoModal.src=isVideoModal.src;}
4blockBody(modal,false);closeModalButtons.forEach(function(exit){exit.removeEventListener("click",exitModal);});modal.removeEventListener("click",closeModalClickOutside);document.removeEventListener("keydown",closeModalEsc);document.removeEventListener("keydown",trapFocus);triggerElement.focus();}
5function closeModalClickOutside(event){if(event.target===modal&&!modal.querySelector(".ds-modal__content").contains(event.target)){exitModal(event);}}
6function closeModalEsc(event){if(event.key==="Escape"){exitModal(event);}}
7closeModalButtons.forEach(function(exit){exit.addEventListener("click",exitModal);});modal.addEventListener("click",closeModalClickOutside);document.addEventListener("keydown",closeModalEsc);});});});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.