您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
访问匿名不可用内容时跳转至sleazyfork,未登录状态下尝试在sleazyfork查找内容后合并至greasyfork | Merge sleazyfork results into greasyfork when the script is no longer anonymously available
当前为
- // ==UserScript==
- // @name 大人的Greasy Fork
- // @namespace hoothin
- // @version 0.3
- // @description 访问匿名不可用内容时跳转至sleazyfork,未登录状态下尝试在sleazyfork查找内容后合并至greasyfork | Merge sleazyfork results into greasyfork when the script is no longer anonymously available
- // @author hoothin
- // @match http*://greasyfork.org/*
- // @match http*://www.greasyfork.org/*
- // @grant GM_xmlhttpRequest
- // ==/UserScript==
- (function() {
- 'use strict';
- if(document.querySelector('span.sign-in-link')){
- if(/scripts\/\d+/.test(location.href)){
- if(!document.querySelector("#script-info")){
- location.href=location.href.replace(/\/\/([^\.]+\.)?greasyfork\.org/,"//$1sleazyfork\.org");
- }
- }else if(/(scripts|users)\//.test(location.href)){
- var scriptList=/scripts\//.test(location.href)?"browse-script-list":"user-script-list";
- GM_xmlhttpRequest({
- method: 'GET',
- url: location.href.replace(/\/\/([^\.]+\.)?greasyfork\.org/,"//$1sleazyfork\.org"),
- onload: function(result) {
- var doc = null;
- try {
- doc = document.implementation.createHTMLDocument('');
- doc.documentElement.innerHTML = result.responseText;
- }
- catch (e) {
- console.log('parse error');
- }
- if (!doc) {
- return;
- }
- var ml = document.querySelector('#'+scriptList);
- console.log(scriptList);
- if(!ml){
- ml=document.createElement("ol");
- ml.setAttribute("id",scriptList);
- ml.setAttribute("class","script-list");
- var list=document.querySelector('body>div.width-constraint');
- var ps=list.querySelectorAll("p");
- for(var p of ps){
- list.removeChild(p);
- }
- list.appendChild(ml);
- }
- var l = doc.querySelector('#'+scriptList);
- if (l) {
- var scs=l.querySelectorAll("li");
- if(scs){
- for(var sc of scs){
- if(!ml.querySelector("li[data-script-id='"+sc.getAttribute("data-script-id")+"']")){
- ml.appendChild(sc);
- }
- }
- }
- }
- },
- onerror: function(e) {
- console.log(e);
- }
- });
- }
- }
- })();