在教材预览页面添加一个漂亮的按钮,点击按钮可以打开该页面对应的PDF文件
当前为
// ==UserScript==
// @name 国家中小学智慧教育平台教材PDF链接工具
// @namespace http://tampermonkey.net
// @version 1.0
// @description 在教材预览页面添加一个漂亮的按钮,点击按钮可以打开该页面对应的PDF文件
// @match *://www.zxx.edu.cn/*
// @match *://basic.smartedu.cn/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
const pattern = /contentId=([a-zA-Z0-9_-]+)/; // 匹配 contentId 的正则表达式
const contentId = window.location.href.match(pattern)[1]; // 获取 contentId 的数值
// window.location.href = `https://r3-ndr.ykt.cbern.com.cn/edu_product/esp/assets_document/${contentId}.pkg/pdf.pdf`; // 直接重定向到该网址,经测试可用
let link = `https://r3-ndr.ykt.cbern.com.cn/edu_product/esp/assets_document/${contentId}.pkg/pdf.pdf`;
let hasModified = false; // 标记是否已执行过修改操作
const intervalId = setInterval (function() {
if (!hasModified) {
const a = document.createElement('a');
a.innerHTML = '📓 打开PDF'; // 文本内容
a.display = 'flex'; // 弹性容器布局
a.style.alignItems = 'center'; // 居中对齐
a.style.marginLeft = '24px'; // 左边距(“点赞数”左右边距各10,“建议”左边距14,故按钮间距为24)
a.style.fontSize = '14px'; // 字体大小
a.style.cursor = 'pointer'; // 指针变手型
a.style.color = '#888'; // 文本颜色
a.href = link; // 链接
// a.target = '_blank'; // 新标签页打开
const container = document.querySelector("#main-content > div.content > div.index-module_special-edu-detail_aH1Nr > div > div > div.index-module_header_tG-zz > div > div.index-module_extra_tUQog"); // 找到要添加按钮的容器元素
container.appendChild(a); // 将按钮添加到网页中
a.addEventListener('mouseover', function() {
this.innerHTML = '📘 打开PDF';
this.style.color = '#226dec'; // 鼠标移入时修改元素的样式
});
a.addEventListener('mouseout', function() {
this.innerHTML = '📓 打开PDF';
this.style.color = '#888'; // 鼠标移出时恢复原来的样式
});
a.addEventListener('mousedown', function() {
this.innerHTML = '📕 打开PDF';
this.style.color = '#e82020'; // 鼠标按下时修改元素的样式
});
// a.addEventListener('mouseup', function() {
// this.innerHTML = '📓 打开PDF';
// this.style.color = '#888'; // 鼠标抬起时修改元素的样式
// });
// a.addEventListener('click', function() {
// window.open(link); // 在新窗口中打开链接
// });
hasModified = true; // 修改标记为已执行过修改操作
clearInterval(intervalId); // 停止定时器
}
}, 1);
})();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址