LiteyukiBot/docs/.vuepress/public/js/get_data.js

39 lines
1.5 KiB
JavaScript
Raw Normal View History

2024-08-01 05:11:05 +00:00
// 定义全局变量来存储数据
let globalTotal = 0;
let globalOnline = 0;
2024-08-01 04:23:56 +00:00
2024-08-01 05:11:05 +00:00
// 从API获取数据并更新全局变量
function fetchAndUpdateData() {
Promise.all([
fetch("https://api.liteyuki.icu/count").then(res => res.json()),
fetch("https://api.liteyuki.icu/online").then(res => res.json())
])
.then(([countRes, onlineRes]) => {
globalTotal = countRes.register;
globalOnline = onlineRes.online;
})
.catch(err => {
console.error("Error fetching data:", err);
});
}
2024-08-01 04:28:44 +00:00
2024-08-01 05:11:05 +00:00
// 更新页面显示,使用全局变量中的数据
function updatePageDisplay() {
let countInfo = document.getElementById("count-info");
if (!countInfo) {
let info = `<div id="count-info" style="text-align: center; font-size: 20px; font-weight: 500">
全球实例:<span id="total">${globalTotal}</span>&nbsp;&nbsp;&nbsp;&nbsp;线:<span id="online">${globalOnline}</span></div>`;
let mainDescription = document.querySelector("#main-description");
if (mainDescription) {
mainDescription.insertAdjacentHTML('afterend', info);
2024-08-01 04:28:44 +00:00
}
2024-08-01 05:11:05 +00:00
// 如果countInfo存在可以在这里添加逻辑来更新现有的DOM元素
}
2024-08-01 04:28:44 +00:00
}
2024-08-01 05:11:05 +00:00
// 初始调用更新数据
fetchAndUpdateData();
// 设置定时器,分别以不同频率调用更新数据和更新页面的函数
setInterval(fetchAndUpdateData, 10000); // 每10秒更新一次数据
setInterval(updatePageDisplay, 1000); // 每1秒更新一次页面显示