循环清理指定元素的CSS类和按钮禁用属性
// ==UserScript==
// @name wps表单提前填写
// @namespace http://tampermonkey.net/
// @version 1.1
// @description 循环清理指定元素的CSS类和按钮禁用属性
// @author LinXingJun
// @match *://f.wps.cn/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
// 定义需要处理的XPath路径
const XPATHS = [
{
path: "/html/body/div/div/div[2]/div[1]/div[2]/div[2]/div[1]",
action: (element) => {
element.classList.remove('src-pages-form-write-index__mask');
console.log("Mask class removed");
}
},
{
path: "/html/body/div/div/div[2]/div[1]/div[2]/div[2]/div[1]/div[2]/div/div/button",
action: (element) => {
element.removeAttribute('disabled');
console.log("Button enabled");
}
}
];
// 核心处理函数
function processElements() {
XPATHS.forEach(item => {
const result = document.evaluate(
item.path,
document,
null,
XPathResult.FIRST_ORDERED_NODE_TYPE,
null
);
if (result.singleNodeValue) {
item.action(result.singleNodeValue);
}
});
}
// 建立观察器监控DOM变化(备用方案)
const observer = new MutationObserver(processElements);
observer.observe(document.body, { childList: true, subtree: true });
// 主循环(双重保障)
setInterval(processElements, 1000);
})();