Update index.html

Signed-off-by: elseif <elseif@live.cn>
This commit is contained in:
elseif 2025-09-08 10:04:22 +08:00 committed by GitHub
parent cd32348c52
commit 477fd66fe0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,3 +1,4 @@
<!doctype html>
<html lang="en" >
<head>
@ -360,26 +361,30 @@
</head>
<body>
<script>
function fetch_latest_versions(url, defaultValue) {
async function fetch_latest_versions(url, defaultValue, timeout = 3000) {
try {
const xhr = new XMLHttpRequest();
xhr.open("GET", url, false);
xhr.send(null);
if (xhr.status === 200) {
return xhr.responseText.split(" ")[0];
const controller = new AbortController();
const id = setTimeout(() => controller.abort(), timeout);
const res = await fetch(url, { signal: controller.signal });
clearTimeout(id);
if(res.ok){
const text = await res.text();
return text.split(" ")[0];
}
} catch (e) {
console.warn("fetch 失败:", e);
} catch(e) {
console.warn("fetch failed or timeout:", e);
}
return defaultValue;
}
const routeros7_stable = fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWESTa7.stable", "7.19.4");
const routeros7_testing = fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWESTa7.testing", "7.20beta9");
const routeros6_longterm = fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWEST6.long-term", "6.49.18");
const routeros6_stable = fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWEST6.stable", "6.49.19");
async function init() {
const routeros7_stable = await fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWESTa7.stable", "7.19.4");
const routeros7_testing = await fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWESTa7.testing", "7.20beta9");
const routeros6_longterm = await fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWEST6.long-term", "6.49.18");
const routeros6_stable = await fetch_latest_versions("https://upgrade.mikrotik.ltd/routeros/NEWEST6.stable", "6.49.19");
const downloads =[
{
@ -619,7 +624,7 @@
};
const baseUrl = (version,arch) => `${localStorage.getItem("gh-proxy-enabled") === "true" ? "https://gh-proxy.com/":""}https://github.com/elseif/MikroTikPatch/releases/download/${version}${arch === "x86" ? "":arch === "general"? "": "-"+arch}/`;
window.addEventListener('DOMContentLoaded', () => {
const container = document.getElementById("download-rows");
downloads.forEach((download, index) => {
const wrapper = document.createElement("div");
@ -854,7 +859,6 @@
});
initLanguage();
const themeBtn = document.getElementById("theme-toggle");
const currentTheme = localStorage.getItem("theme");
@ -873,8 +877,8 @@
localStorage.setItem("theme","light");
}
});
});
}
window.addEventListener("DOMContentLoaded", init);
</script>
<script async defer src="https://buttons.github.io/buttons.js"></script>
<div class="wrapper">