Files

51 lines
1.4 KiB
JavaScript
Raw Permalink Normal View History

2026-05-26 11:26:37 -03:00
(() => {
const params = new URLSearchParams(location.search);
const destUrl = params.get('url');
const loadDelay = params.get('load_delay'); // seconds, or null
2026-05-26 11:26:37 -03:00
if (!destUrl) {
document.querySelector('.label').textContent = 'No URL provided.';
document.getElementById('dest').textContent = '';
document.getElementById('goNow').style.display = 'none';
return;
}
document.getElementById('dest').textContent = destUrl;
document.title = '⏳ ' + destUrl;
let navigated = false;
function navigate() {
if (navigated) return;
navigated = true;
if( destUrl.indexOf('chrome://')==0 ) {
document.querySelector('.ring').style.display = 'none';
document.querySelector('.label').textContent = 'Cant load url';
}
else {
location.replace(destUrl);
}
2026-05-26 11:26:37 -03:00
}
// "Load now" button — immediate bypass
document.getElementById('goNow').addEventListener('click', navigate);
// Navigate when the tab becomes visible (user switches to it)
if (document.visibilityState === 'visible') {
document.getElementById('content').style.display = 'block';
requestAnimationFrame(navigate);
}
else {
2026-05-26 11:26:37 -03:00
document.addEventListener('visibilitychange', () => {
if (document.visibilityState === 'visible') {
document.getElementById('content').style.display = 'block';
requestAnimationFrame(navigate);
}
2026-05-26 11:26:37 -03:00
});
}
if( loadDelay!=null ) {
setTimeout(navigate, loadDelay*1000);
}
2026-05-26 11:26:37 -03:00
})();