修改学籍照片为Base64

访问学籍系统时,将照片src替换为Base64格式图片

目前為 2025-03-07 提交的版本,檢視 最新版本

// ==UserScript==
// @name         修改学籍照片为Base64
// @namespace    http://jw.imut.edu.cn
// @version      1.2
// @description  访问学籍系统时,将照片src替换为Base64格式图片
// @match        http://jw.imut.edu.cn/academic/index_frame.jsp*
// @match        http://jw.imut.edu.cn/academic/*
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_registerMenuCommand
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    // 从存储中获取Base64图片字符串
    var base64Image = GM_getValue('base64Image', '');

    // 定义一个函数,在指定文档中替换id为"photo"的img的src
    function replaceImageSrc(doc) {
        var img = doc.getElementById('photo');
        if (img) {
            img.src = base64Image;
            console.log('已替换图片src');
        }
    }

    // 对当前页面执行替换
    replaceImageSrc(document);

    // 如果页面中存在iframe,也进行替换
    var iframes = document.getElementsByTagName('iframe');
    for (var i = 0; i < iframes.length; i++) {
        try {
            var iframeDoc = iframes[i].contentDocument || iframes[i].contentWindow.document;
            replaceImageSrc(iframeDoc);
        } catch (e) {
            console.error('无法访问iframe内容:', e);
        }
    }

    // 只在主页面注册(不可用)菜单命令
    if (window.top === window) {
        GM_registerMenuCommand('设置Base64图片字符串', function() {
            var newBase64Image = prompt('请输入新的Base64图片字符串(包括data:image/png;base64,前缀):', base64Image);
            if (newBase64Image) {
                GM_setValue('base64Image', newBase64Image);
                base64Image = newBase64Image;
                console.log('新的Base64图片字符串已保存');
                alert('新的Base64图片字符串已保存。请刷新页面以应用更改。');
                // 重新替换图片src
                replaceImageSrc(document);
                var iframes = document.getElementsByTagName('iframe');
                for (var i = 0; i < iframes.length; i++) {
                    try {
                        var iframeDoc = iframes[i].contentDocument || iframes[i].contentWindow.document;
                        replaceImageSrc(iframeDoc);
                    } catch (e) {
                        console.error('无法访问iframe内容:', e);
                    }
                }
            }
        });
    }
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址