Greasy Fork is available in English.
在洛谷题库右下角(也就是广告处)添加猫和老鼠,供大家娱乐使用
// ==UserScript==
// @name 洛谷娱乐插件·猫和老鼠
// @namespace http://tampermonkey.net/
// @version 1.5.2
// @license MIT
// @description 在洛谷题库右下角(也就是广告处)添加猫和老鼠,供大家娱乐使用
// @author jyb666(制作插件)&维尼(制作gif)
// @match *://www.luogu.com.cn/problem/*
// @exclude *://www.luogu.com.cn/problem/list
// @match *://www.luogu.com.cn/training/*
// @exclude *://www.luogu.com.cn/training/list
// @exclude *://www.luogu.com.cn/contest/*
// @match *://www.luogu.com.cn/record/*
// @match *://www.luogu.com.cn/discuss/*
// @exclude *://www.luogu.com.cn/discuss/list
// @run-at document-end
// @grant GM_xmlhttpRequest
// @connect oj.hikari.owo.fit
// ==/UserScript==
(function() {
'use strict';
var url = Array();
GM_xmlhttpRequest({
method: "GET",
url: "https://oj.hikari.owo.fit/api/entertainment",
onload: function(response) {
var res = JSON.parse(response.responseText);
if(res.status==200&&response.status==200) {
url = res.url;
} else {
alert("与 Hikari 的连接错误");
}
}
});
function randomNum(minNum,maxNum){
switch(arguments.length){
case 1:
return parseInt(Math.random()*minNum+1,10);
break;
case 2:
return parseInt(Math.random()*(maxNum-minNum+1)+minNum,10);
break;
default:
return 0;
break;
}
}
function init() {
var html = "<div data-v-0a593618=\"\" data-v-7b37eb95=\"\" id=\"entertainment\" style=\"z-index: 9999;position: fixed;padding:5px;text-align:center;width: 400px;right: 10px;bottom: 10px;\"><img id=\"entertainment-img\" style=\"width:100%;\" src=\""+url[randomNum(0,url.length-1)]+"\"> <a id=\"entertainment-a\" onclick=\"location.reload();\">看过了?点我刷新</a><button data-v-86f36770=\"\" data-v-0a593618=\"\" type=\"button\" onclick=\"document.getElementById(\'entertainment\').innerHTML=\'\';\" style=\"border-color: rgba(255, 255, 255, 0.5); color: rgb(255, 255, 255); background-color: rgba(0, 0, 0, 0.5);\">教练来了</button></div>";
var node = document.createElement('div');
node.innerHTML = html;
document.querySelector('body').insertAdjacentElement('afterend', node);
}
var document=unsafeWindow.document;
window.onload=function(){setTimeout(function() {
document.querySelector("div[data-v-0a593618]").remove();
init();
},500)}
})();