od.js

Turn on old driver mode for HacgGodTurn

Този скрипт не може да бъде инсталиран директно. Това е библиотека за други скриптове и може да бъде използвана с мета-директива // @require https://update.sleazyfork.org/scripts/23522/1002023/odjs.js

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

function processTxt(e) { var t, r = e;
    r && (r = r.replace(regObj.bdshare, linkArr.baidu), r = r.replace(regObj.bdshare1, linkArr.baidu), e = r, r = r.replace(/ *-?本站暂?不再?提供(文件)?下载-? */i, "").replace(/ *保护作者版权 */i, "").replace(/ *请支持正版 */i, "").replace(/\<\!--[^>]*>/g, ""), r = /^(magnet|bdcloud) /i.test(r) ? r : r.replace(/([a-z0-9]{5,}) +([a-z0-9]{5,})/g, "$1$2"), t = r, r = !/a\shref="magnet:|md5/i.test(r) ? r.replace(regObj.btih, linkArr.btih) : r, r = r.replace(regObj.yunpan, linkArr.yunpan), r = r.replace(regObj.howfile, linkArr.howf), r = r.replace(regObj.tcn, linkArr.tcn), r = r.replace(regObj.yyw, linkArr.yyw), r = r.replace(regObj.mega, linkArr.mega), r = r.replace(regObj.pixiv, linkArr.pixiv), r = r.replace(/(baidu\.com\/s\/[a-z\d]{7,23})#([\'\"])/gi, "$1$2"), r = r.replace(regObj.xunlei, linkArr.xunlei)); 
    if (t != r) return r;
    else return e; 
}

function extCode(e) { 
    return text = e.textContent.trim(), simpleRule.test(text) ? text.match(simpleRule)[1] : codeRule.test(text) ? text.match(codeRule)[1] : "" 
}

function seriousReplace(e) {
    let t = document.getElementsByClassName(e);
    for (let r in t) 
        t[r] && t[r].innerHTML && (t[r].innerHTML = t[r].innerHTML.replace(/&nbsp;/g," ").replace(/(\s|^|:|<p>|[\u2E80-\u9FFF])(?:https?:\/\/pan\.baidu\.com)?(?:\/?s\/)?(1[0-9a-zA-Z_\-]{6,22})\b(?:\s*(?:<br\s*\/?>)?\s*(?:密码[::]?|pw:|[pP]|钥匙|提取码?:?)?\s*([a-z0-9A-Z]{4}\b|[^\s,,::\<\>]{2,4})\s*(<br\s*\/?>|<\/p>|$| +))/g, linkArr.baidu).replace(/(\s|^|:|<p>|[\u2E80-\u9FFF])(?:https?:\/\/pan\.baidu\.com\/)?(?:\/?s\/)(1[0-9a-zA-Z_\-]{6,22})\b\s*(<br\s*\/?>|<\/p>|$)/g, "$1<a href='http://pan.baidu.com/s/$2' target='_blank'>度娘:$2</a> $3 ").replace(regObj.yyw, linkArr.yyw).replace(regObj.tcn, linkArr.tcn), t[r].innerHTML = !/a\shref="magnet:|md5/i.test(t[r].innerHTML) ? t[r].innerHTML.replace(regObj.btih, linkArr.btih) : t[r].innerHTML)
}

function hashFunc(e) { 
    return hashWord = e.match(/^\W*/g)[0], e = e.replace(/[\s\W]*/g, "").toUpperCase(), hashStart = e.slice(0, 2), hashEnd = e.slice(-2), [hashStart, hashEnd, e, hashWord] 
}

function addInsertHandler(e) { var t = !1;
    document.addEventListener("DOMNodeInserted", function() { 
        if ("complete" == document.readyState && !t) { 
            t = !0; var r = 0,
            a = setInterval(function() { 
                1 == r ? changeUrl(!1, e) : 2 == r && (t = !1, clearInterval(a)), r++ 
            }, 500) 
        } 
    }), changeUrl(!0, e) }

function changeUrl(e, t) { 
    for (var r = e ? t[0] : ["a", "img"], a = 0, i = r.length; i > a; a++)
        for (var n = r[a], s = document.querySelectorAll(n), o = 0, l = s.length; l > o; o++)
            for (var p = 0, h = t[1].length; h > p; p++) { 
                var c = new RegExp(t[1][p][0], "gi"); 
                if (n == "a") { 
                    c.test(s[o].href) && (s[o].href = s[o].href.replace(c, t[1][p][1])) 
                } else if (n == "img") { 
                    c.test(s[o].src) && (s[o].src = s[o].src.replace(c, t[1][p][1])) 
                } else { 
                    s[o].parentNode && c.test(s[o].outerHTML) && (s[o].outerHTML = s[o].outerHTML.replace(c, t[1][p][1])) 
                } 
            } 
}
var simpleRule = /(?:提取|访问)[码碼]?\s*[::\s]?\s*([a-z\d]{4})/i,
    codeRule = /(?:(?:提取|钥匙|访问|密[码碼]|艾|Extracted-code|说明|code[::][“"]?)密?[码碼]?[为是]?)\s*[::\s]?\s*([a-z\d]{4}|[^\s,,::]{2,4})(\s|\b|$)/i,
    regObj = {
        btih: /(?:magnet:\?xt=urn:btih)?((?:[^\/=\|\"]|^)\s*\b)([a-f0-9]{40}|[a-z0-9]{32})\b([^#]|$)/gi,
        bdshare: /(\b|^)(?:b?\/?s\/|.*度.*[::]|BDcloud *|(?:https?:\/\/)?\s*p\s*a\s*n\s*\.\s*b\s*a\s*i\s*d\s*u\s*\.\s*c?\s*o\s*m\s*\/\s*s\s*\/\s*)(1[0-9a-zA-Z_\-]{6,22})\b(?:\s*(?:.*?[::]\s*)?([a-zA-Z0-9]{4}(\b|\s|$)|[^\s,,::\<\>]{2}(\s|$)))?/g,
        bdshare1: /(^|:|:|\n|BDcloud *)\s*(1[0-9a-zA-Z_\-]{6,22})\b(?:\s*(?:[::\/]\s*)?([a-zA-Z0-9]{4}|[^\s,,::\<\>]{2}))/g,
        xunlei: /\b(QUF[a-zA-Z0-9\=]+)/g,
        howfile: /@?(?:HF|howfile)(?:\.com)?\/file\/(\w{4,10})\/(\w{8,})\/?/gi,
        tcn: /\bt\/(\w{7})/g,
        yyw: /(\/lb\/)?(5lb[a-zA-Z0-9]{8,12})/g,
        mega: /(?:https?:\/\/mega)?(?:\.co)?(\.nz\s*\/(#[a-zA-Z0-9_!\-]{22,}(\n[a-zA-Z0-9_!\-]+\n)?))/g,
        yunpan: /((?:https:\/\/)?yunpan.cn\/([a-zA-Z0-9]+))/g,
        pixiv: /(?:封面|\s|:|:|^)id[=;](\d+)/gi
    },
    linkArr = [];
    linkArr.btih = '$1<a href="magnet:?xt=urn:btih:$2" >磁链</a> → <a href="https://itorrents.org/torrent/$2.torrent" target="_blank" title="点击下载种子文件">【种子】</a>+<a href="https://btsow.rest/magnet/detail/hash/$2" target="_blank" title="支持Base32,可查看种子内容">【详情】</a>', linkArr.baidu = "$1<a href='http://pan.baidu.com/s/$2#$3' target='_blank'>度娘[$2]</a> $3 ", linkArr.yunpan = "<a href='$1' target='_blank'>云盘:$2</a>", linkArr.howf = "<a href='http://howfile.com/file/$1/$2/' target='_blank'>好盘:howfile.com/file/$1/$2</a>", linkArr.tcn = "<a href='http://t.cn/$1' target='_blank'>短链:t.cn/$1</a>", linkArr.yyw = "<a href='http://115.com/lb/$2' target='_blank'>115礼包:$2</a> ", linkArr.mega = "<a href='https://mega.co$1' target='_blank'>MEGA网盘</a>\n", linkArr.xunlei = "<a href='thunder://$1' target='_blank'>吸血雷</a>", linkArr.pixiv = "<a href='http://www.pixiv.net/member_illust.php?mode=medium&illust_id=$1' target='_blank'>Pixiv原图</a>";
var nod = document.createElement("style"),
    str = ".oD_box{position:fixed;top:60px;right:0px;width:40px;transition: all 0.2s ease;white-space:nowrap;z-index:99998} .oD_box:hover{width:290px} .oD_sel{-ms-transform-origin: 50% 0%;-webkit-transform-origin: 50% 0%;transform-origin: 50% 0%;transform:scale(1.1,1.1);-ms-transform:scale(1.1,1.1);-moz-transform:scale(1.1,1.1);-webkit-transform:scale(1.1,1.1);-o-transform:scale(1.1,1.1);transition: all 1s ease;}";
nod.type = "text/css", nod.styleSheet ? nod.styleSheet.cssText = str : nod.innerHTML = str;
var rocketStr = '<div id="rocketContent" style="display: none;"><div style="height:100%; width:100%; position:fixed; _position:absolute; top:0; z-index:99999; opacity:0.3; filter: alpha(opacity=30); background-color:#000"></div><div style="width:300px;height:300px;position:fixed;left:50%;top:50%;margin-top:-150px;margin-left:-150px;z-index:100000;background-color:#ffffff;border:1px solid #afb3b6;border-radius:10px;opacity:0.95;filter:alpha(opacity=95);box-shadow:5px 5px 20px 0px #000;"><div id="rocketLinks" style="position:absolute;left:20px;top:20px;height:260px;width:260px;overflow:auto;word-wrap:break-word;"></div><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAA5FBMVEUAAAD+/v7////9/f7////////+/v7+/v7////+/v7+/v7////+/v7+/v7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////+/v7+/v7+/v7+/v7+/v4uje3///82ke7s9P3N5PtQoPDI4fqCu/Tu9v5Im+/6/P+VxfZgqPFNnvDp8/3f7fq42Pmnz/d1tPNvsfNkq/JCmO/4+/7X6fz19/rn8PqYx/aNwfV8uPRqrvJZpfFUovAzkO3Q5vu92/mr0fieyva92fWx0vQ6lO5pygFTAAAAJHRSTlMAmfD+RMGwgj2mknlIKR/36+XGnIyHfnJfVDk2My8S4E1CJBvTatKDAAABY0lEQVQoz4WSZ1fCMBRA05ahLPfemkspBUFwgGz3+P//x/hK6ZBzvB/ak96+kZeoGCtFK5eziitqCSfWOnM2CuWUrOyQYPc0bjM2htHXh+/ffQ4lQ6zEPoZ6TwdUp10M56EtAe5MR7y0HGAeX7Ghe6MTzIZwFtTfBrepUzw4UFSGY8CUTTMGLo3eglv58By21pRnB7aNBqTwPfWq/OVey9sH22wZXiWo6Yr3GtRl/f0IRyoPYy14v97YWjVY12BPrcK9XvhaZPUdWCoLbR35yOoW5P7R8eQ3JrmbSp6HVmSrXuTrmNYyUAs2JkL6D6YjG1PgNGXK87F4nWAsUxmL2gyH6oVD7cuhdqFg9CE4T/oPE6CsgvBOP21715AP7ugaDFK+3YD1KyUcAG47bn0TSylxFd8WDTwMMByoBSUHw+jd9/3JbQODnVExygUS7FRUksPVtdDZW8dqCZm8lc1auxcq4gc02GVGTUchmgAAAABJRU5ErkJggg==" id="rocketQuit" style="position:absolute;right:0px;top:0px;cursor: pointer;"/></div></div>';

function elementPosition(o) {
    let t = 0,
        e = 0;
    if (o.offsetParent)
        for (t = o.offsetLeft, e = o.offsetTop; o.offsetParent;) o = o.offsetParent, t += o.offsetLeft, e += o.offsetTop;
    return {
        x: t,
        y: e
    }
}


var repeatCount = 0,
    cTimeout;

function scrollToControl(o) {
    let t = o;
    t -= (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);
    let e = t % 50,
        r = (t - e) / 50;
    window.scrollBy(0, e), scrollSmoothly(t, r, o)
}

function scrollSmoothly(o, t, a) {
    let e = 50;
    return 0 > t && (e = -50), repeatCount < Math.abs(t) ? (window.scrollBy(0, e), repeatCount++, void(cTimeout = setTimeout(function() {
        scrollSmoothly(o, t, a)
    }, 10))) : (void clearTimeout(cTimeout), repeatCount = 0, window.scrollTo(0, a))
}