|
本帖最后由 a81497845 于 2025-7-7 22:18 编辑
油猴代码如下
使用方法
1.安装Tampermonkey浏览器扩展
2.安装成功后找到已安装脚本选项,点击旁边的加号新建一个空白脚本,粘贴以下代码
3.创建脚本后浏览C站帖子列表时,按下Ctrl+F1功能自动生效,刷新后恢复正常
- // ==UserScript==
- // @name Ctrl+F1 C站解除隐藏
- // @version 1.0.0
- // @description 按下Ctrl+F1显示网页中所有被隐藏的内容(仅限HTML,JavaScript),按下Ctrl+F2,解除网页编辑限制,按下ctrl+F3,恢复网页编辑限制!
- // @encoding utf-8
- // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
- // @license MIT
- // @grant none
- // @match https://bbs.colg.cn/forum*
- // @match https://bbs.colg.cn/thread*
- // @exclude https://bbs.colg.cn/thread-7947196*
- // @exclude https://bbs.colg.cn/forum.php?mod=viewthread&tid=7947196*
- // @match https://bbs.colg.com.cn/forum*
- // @match https://bbs.colg.com.cn/thread*
- // @exclude https://bbs.colg.com.cn/thread-7947196*
- // @exclude https://bbs.colg.com.cn/forum.php?mod=viewthread&tid=7947196*
- // @run-at document-start
- // @namespace
- // ==/UserScript==
- function addEvent(obj, event, fn) {
- return obj.addEventListener ? obj.addEventListener(event, fn, false) : obj.attachEventListener("on" + event, fn);
- };
- // 存储原始背景色以便恢复
- let originalBgColors = new WeakMap();
- addEvent(window, 'keydown', function(event) {
- event = event || window.event;
- if (event.ctrlKey) { // 是否按下ctrl
- if(event.keyCode == 112) { // ctrl+F1,显示网页中所有被隐藏的内容
- var paragraphs = document.querySelectorAll("*");
- for(var i = 0; i < paragraphs.length; i++) {
- // 检查并显示隐藏元素
- let wasHidden = false;
- if(paragraphs[i].style.display === "none") {
- paragraphs[i].style.display = "";
- wasHidden = true;
- }
- if(paragraphs[i].type === "hidden") {
- paragraphs[i].type = "";
- wasHidden = true;
- }
- if(window.getComputedStyle(paragraphs[i]).visibility === "hidden") {
- paragraphs[i].style.visibility = "visible";
- wasHidden = true;
- }
- // 如果是被隐藏的元素,设置黄色背景
- if(wasHidden) {
- // 保存原始背景色
- originalBgColors.set(paragraphs[i], paragraphs[i].style.backgroundColor);
- // 设置黄色背景
- paragraphs[i].style.backgroundColor = "yellow";
- // 添加临时class以便识别
- paragraphs[i].classList.add("tm-highlighted-element");
- }
- }
- console.log("已显示所有隐藏内容并用黄色背景高亮");
- }
- else if(event.keyCode == 115) { // ctrl+F4,恢复高亮元素的原始背景色
- var highlighted = document.querySelectorAll(".tm-highlighted-element");
- for(var i = 0; i < highlighted.length; i++) {
- let originalBg = originalBgColors.get(highlighted[i]);
- highlighted[i].style.backgroundColor = originalBg || "";
- highlighted[i].classList.remove("tm-highlighted-element");
- }
- console.log("已恢复所有高亮元素的原始背景色");
- }
- else if(event.keyCode == 113) { // ctrl+F2,解除网页编辑限制
- document.body.contentEditable = 'true';
- document.designMode = 'on';
- var paragraphs2 = document.getElementsByTagName("*");
- for(var i2 = 0; i2 < paragraphs2.length; i2++) {
- paragraphs2[i2].readOnly = false;
- }
- console.log("已解除网页编辑限制");
- }
- else if(event.keyCode == 114) { // ctrl+F3,恢复网页编辑限制
- document.body.contentEditable = 'false';
- document.designMode = 'off';
- console.log("已恢复网页编辑限制");
- }
- }
- });
- // 添加CSS样式使高亮更明显
- const style = document.createElement('style');
- style.textContent = `
- .tm-highlighted-element {
- box-shadow: 0 0 2px 1px rgba(255,165,0,0.5);
- transition: background-color 0.3s ease;
- }
- `;
- document.head.appendChild(style);
复制代码
|
|