Greasy Fork is available in English.
为老师服务.在课件页面,可以看到多出一个下载按钮
// ==UserScript==
// @name 国家中小学智慧教育平台-课件-教案-下载工具
// @namespace http://tampermonkey.net/
// @version 0.1
// @description 为老师服务.在课件页面,可以看到多出一个下载按钮
// @author interim
// @match https://basic.smartedu.cn/syncClassroom/prepare/detail?resourceId=*
// @icon https://www.google.com/s2/favicons?sz=64&domain=smartedu.cn
// @grant GM_xmlhttpRequest
// @connect *
// ==/UserScript==
(function() {
'use strict';
function modifyDOM() {
// 找到内容为"播放"的span
let spans = Array.from(document.querySelectorAll('span'));
let targetSpan = spans.find(span => span.textContent === "播放");
if (targetSpan) {
// 获取目标span的父控件的父控件
let grandParent = targetSpan.parentElement.parentElement;
// 获取grandParent的第一个子控件的class
let childClass = grandParent.children[0].className;
// 创建一个新的div并设置class
let newDiv = document.createElement('div');
newDiv.className = childClass;
grandParent.appendChild(newDiv);
// 在新的div内增加一个a标签,并设置文本为"下载"
let newA = document.createElement('a');
newA.textContent = '下载';
newA.href = '#'; // 请记得修改为您需要的下载链接
newDiv.appendChild(newA);
// 获取URL中的resourceId
const urlParams = new URLSearchParams(window.location.search);
const resourceId = urlParams.get('resourceId');
if (resourceId) {
// 构建新的URL并获取JSON数据
const jsonUrl = `https://s-file-2.ykt.cbern.com.cn/zxx/ndrv2/prepare_sub_type/resources/details/${resourceId}.json`;
//console.log(jsonUrl);
GM_xmlhttpRequest({
method: "GET",
url: jsonUrl,
onload: function(response) {
// console.log(response.responseText);
const data = JSON.parse(response.responseText);
if (data && data.ti_items) {
for (let item of data.ti_items) {
if (item.ti_storages) {
// 打印每个PDF链接
for (let pdfUrl of item.ti_storages) {
//console.log(pdfUrl);
if (pdfUrl.endsWith('.pdf')) {
const modifiedUrl = pdfUrl.replace('-private', '');
newA.href = modifiedUrl;
// 结束循环
return;
}
}
}
}
}
}
});
}
}
}
// 确保在文档加载完成后再执行函数
setTimeout(modifyDOM, 2 * 1000);
// console.log(document.URL);
// Your code here...
})();