Files
Website/Static/Gui/js/new_Rss.js

45 lines
2.0 KiB
JavaScript
Raw Normal View History

2023-03-18 10:13:09 +08:00
//定义一个函数来获取rss文件
function getRSS(url) {
//使用fetch API来调用url
fetch(url)
.then(response => response.text()) //将响应解析为文本
.then(str => new window.DOMParser().parseFromString(str, "text/xml")) //将文本解析为XML对象
.then(data => {
//从XML对象中获取channel元素
const channel = data.querySelector("channel");
//从channel元素中获取所有item元素
const items = channel.querySelectorAll("item");
//遍历每个item元素
items.forEach(item => {
//从item元素中获取title和link元素的文本内容
const title = item.querySelector("title").textContent;
const link = item.querySelector("link").textContent;
const datetime = item.querySelector("pubDate").textContent;
//在控制台打印标题和链接
console.log(title, link);
//在news.html页面上的ul元素中添加内容
document.querySelector("ul").innerHTML += `
<a href="${link}" target="_blank">
2023-03-18 10:57:38 +08:00
<li class="idc dnone mdui-list-item mdui-ripple mdui-shadow-12" style="backdrop-filter: blur(8px);overflow-x:hidden">
2023-03-18 10:13:09 +08:00
<div class="mdui-list-item-title">${title}</div>
<div class="mdui-list-item-text mdui-list-item-one-line">
<span>${datetime}</span>
</div>
</a>
</li>
`;
2023-03-18 10:57:38 +08:00
//若是没有的item元素则在页面li添加没有内容”
2023-03-18 10:13:09 +08:00
if (items.length === 0) {
document.querySelector("ul").innerHTML += `
2023-03-18 10:57:38 +08:00
<li class="idc dnone mdui-list-item mdui-ripple mdui-shadow-12" style="backdrop-filter: blur(8px);overflow-x:hidden">
2023-03-18 10:13:09 +08:00
<div class="mdui-list-item-title">没有内容</div>
</li>
`;
}
});
});
}
//调用函数传入rss文件的url这里是一个示例
2023-03-18 10:57:38 +08:00
getRSS("http://www.mikumo.top/?feed=rss2");