您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
优化洛谷使用体验
当前为
// ==UserScript==
// @name 洛谷使用体验优化合集
// @namespace http://tampermonkey.net/
// @version 2024.10.01.2
// @description 优化洛谷使用体验
// @author 旅禾
// @license MIT
// @match ://www.luogu.com.cn/
// @require https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_deleteValue
// @grant GM_removeValueChangeListener
// @grant GM_addValueChangeListener
// @grant GM_registerMenuCommand
// @downloadURL https://update.greasyfork.icu/scripts/510926/%E6%B4%9B%E8%B0%B7%E4%BD%BF%E7%94%A8%E4%BD%93%E9%AA%8C%E4%BC%98%E5%8C%96%E5%90%88%E9%9B%86.user.js
// @updateURL https://update.greasyfork.icu/scripts/510926/%E6%B4%9B%E8%B0%B7%E4%BD%BF%E7%94%A8%E4%BD%93%E9%AA%8C%E4%BC%98%E5%8C%96%E5%90%88%E9%9B%86.meta.js
// ==/UserScript==
function 移除首页多余元素(){
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div:nth-child(1)").remove();
//删去本站公告
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div.lg-article.am-hide-sm").remove();
//删去友情链接
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(1) > div > div > div > div.am-u-md-8").remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-9.am-u-md-8.lg-index-benben.lg-right > div:nth-child(2)").remove();
//删去slider
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(1) > div > div > div > div").className="am-u-md-12 lg-punch am-text-center";
//打卡高度修复
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
document.querySelector("#app-old > div.lg-index-content.am-center > div:nth-child(3) > div.am-u-lg-3.am-u-md-4.lg-right > div").lastChild.remove();
//删去智能推荐
document.querySelectorAll(".lg-article.lg-index-stat")[0].remove();
//删去题号跳转
document.querySelectorAll(".am-u-md-12")[0].className="am-u-md-4";
//打卡宽度修复
document.querySelectorAll(".am-g")[0].className="";
//合并首排卡片
document.querySelectorAll(".am-u-md-9")[0].className="am-u-md-8";
//适配统计图宽
window.onload=function(){document.querySelectorAll(".lg-article")[1].style.height=document.querySelectorAll(".lg-article")[0].clientHeight+"px"};
document.querySelectorAll(".lg-article")[1].style.display="flex";
document.querySelectorAll(".lg-article")[1].style.alignContent="center";
document.querySelectorAll(".lg-article")[1].style.justifyContent="center";
document.querySelectorAll(".lg-article")[1].style.flexWrap="wrap";
document.querySelectorAll(".lg-article>.am-g")[1].style.height=""
//适配折线图高
}
function 添加清理系统生成动态功能(){
let uid = document.querySelector(".avatar").parentElement.href.match(/\d+/g)[0]
$('.popup-button').click(function () {
$('.apps').append('清理犇犇');
$('#bb-del').click(function () {
let uid = window._feInjection.currentUser.uid;
$.get('https://www.luogu.com.cn/feed/user/' + uid, function (data) {
for (let i = 0; ; i += 2) {
let cur = $(data)[i];
if (cur.children[1] === undefined) {
break;
}
if (cur.children[1].children[1].children[0].firstChild.toString() !== "[object Text]") {
continue;
}
let id = cur.children[1].children[0].children[0].children[1].dataset.feedId;
$.post("/api/feed/delete/" + id);
}
alert("完成清理,按下确定刷新");
window.navigation.reload();
});
});
})
}
function 移除用户主页维护提示(){
window.addEventListener('load',function(){
var main = document.getElementsByClassName("card padding-default");
main = main[main.length-1];
var maintenance = main.getElementsByTagName('div')[0];
var introduction = main.getElementsByTagName('div')[1];
if(maintenance.innerText!='系统维护,该内容暂不可见。') return;
maintenance.style.display="none";
introduction.style.display="block";
})
}
function 添加顶栏置顶链接功能(){
$(function(){
function setLink()
{
var link = prompt("请输入链接地址(为空清除)");
if (link == undefined)
{ GM_deleteValue("user_link");return; }
var text = prompt("请输入链接文字");
GM_setValue("user_link", link);
GM_setValue("user_link_text", text);
}
var title = $(".link-container");
var prelink = GM_getValue("user_link");
var pretext = GM_getValue("user_link_text")
var link = '' + pretext + '';
var button = document.createElement("button");
button.innerText = '编辑';
button.className = 'am-btn am-btn-sm am-btn-primary'
button.addEventListener('click', setLink);
var helper = '';
if (pretext)
{
button.style.marginLeft="50px";
title.append(link, helper);
}
title.append(button, helper);
GM_addValueChangeListener(
"user_link",
function (name, old_value, new_value, remote) {
document.querySelector("#userLink").href=new_value;
}
);
GM_addValueChangeListener(
"user_link_text",
function (name, old_value, new_value, remote) {
document.querySelector("#userLink").innerText=new_value;
}
);
});
}
function 洛谷大吉每一天(){
$('document').ready(function(){
var x=document.querySelectorAll(".lg-punch-result");
var y=document.querySelectorAll(".am-u-sm-6");
if(x[0].innerHTML=="§ 大凶 §"){
var sum="宜:出行
一路顺风
";
sum+="宜:继续完成WA的题
下一次就可以AC了
";
y[0].innerHTML=sum;
}
x[0].innerHTML="§ 大吉 §";
x[0].style="color:#e74c3c!important";
y[1].innerHTML="万事皆宜";
y[1].style="color:rgba(0, 0, 0, .75)!important";
y[1].style="font-weight:bold";
});
}
function 添加用户查找功能(){
$('document').ready(function(){setTimeout(function () {
$sidebar = $('#app-old .lg-index-content .lg-right.am-u-lg-3');
$firstele = $($sidebar.children()[0]);
$finder = $(
<div class="lg-article" id="find-user-form">
<h2>查找用户</h2>
<form id="find-user-form">
<input type="text" class="am-form-field" name="finder-uid" placeholder="用户名或uid" autocomplete="off" />
</form>
<button class="am-btn am-btn-sm am-btn-primary" style="margin-top:16px;visibility:hidden">查找</button>
<button class="am-btn am-btn-sm am-btn-primary lg-right" id="find-user-button" style="margin-top:16px;">查找</button>
</div>
);
$finder.insertAfter($firstele);
var find_func = function() {
$('#find-user-button').addClass('am-disabled');
$.get("/api/user/search?keyword=" + $('[name=finder-uid]')[0].value,
function (data) {
var arr = data;
if (!arr['users'][0]) {
$('#find-user-button').removeClass('am-disabled');
show_alert("好像哪里有点问题", "无法找到指定用户");
}
else {
location.href = "/user/"+arr['users'][0]['uid'];
}
}
);
return false;
};
$('#find-user-button').click(find_func);
$('#find-user-form').submit(find_func);
},500)});
}
(function() {
'use strict';
let 启用功能列表=[],禁用功能列表=[],禁用功能菜单列表=[],启用功能菜单列表=[]
let 功能列表=["移除用户主页维护提示","洛谷大吉每一天","移除首页多余元素","添加用户查找功能","添加顶栏置顶链接功能","添加清理系统生成动态功能"]
.forEach((element) => {
if (GM_getValue(element)=="启用"){
启用功能列表.push(element)
}else if (GM_getValue(element)=="禁用"){
禁用功能列表.push(element)
}else{
启用功能列表.push(element)
GM_setValue(element,"启用")
}
});
console.log({启用功能列表,禁用功能列表},启用功能列表.includes("添加顶栏置顶链接功能"))
启用功能列表.forEach((element) => {
禁用功能菜单列表[element] = GM_registerMenuCommand(
"禁用"+element,
function () {
GM_setValue(element,"禁用")
window.navigation.reload();
}
);
});
禁用功能列表.forEach((element) => {
启用功能菜单列表[element] = GM_registerMenuCommand(
"启用"+element,
function () {
GM_setValue(element,"启用")
window.navigation.reload();
}
);
});
if (location.href.match("://www.luogu.com.cn/user/")){
if (启用功能列表.includes("移除用户主页维护提示")){
try{
移除用户主页维护提示();
}catch(e){console.error(e)}
}
}
if (location.href=="https://www.luogu.com.cn/"){
if (启用功能列表.includes("洛谷大吉每一天")){
try{
洛谷大吉每一天();
}catch(e){console.error(e)}
}
if (启用功能列表.includes("移除首页多余元素")){
try{
移除首页多余元素();
}catch(e){console.error(e)}
}
if (启用功能列表.includes("添加用户查找功能")){
try{
添加用户查找功能();
}catch(e){console.error(e)}
}
}
if (location.href.match("://www.luogu.com.cn/")){
if (启用功能列表.includes("添加顶栏置顶链接功能")){
try{
添加顶栏置顶链接功能();
}catch(e){console.error(e)}
}
if (启用功能列表.includes("添加清理系统生成动态功能")){
try{
添加清理系统生成动态功能();
}catch(e){console.error(e)}
}
}
})();