Tiny Customize

针对一些常用网站,例如 3DMGame、卡饭、巴哈姆特、Chiphell 等的反反广告检测、自动化、屏蔽网站功能等。

Verzia zo dňa 28.06.2016. Pozri najnovšiu verziu.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, Greasemonkey alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey alebo Userscripts.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie správcu používateľských skriptov.

(Už mám správcu používateľských skriptov, nechajte ma ho nainštalovať!)

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

(Už mám správcu používateľských štýlov, nechajte ma ho nainštalovať!)

// ==UserScript==
// @name        Tiny Customize
// @description 针对一些常用网站,例如 3DMGame、卡饭、巴哈姆特、Chiphell 等的反反广告检测、自动化、屏蔽网站功能等。
// @namespace   https://greatest.deepsurf.us/zh-CN/scripts/19823-tiny-customize
// @author      nonoroazoro
// @include     /^https?\:\/\/(bbs)\.3dmgame\.com/
// @include     /^https?\:\/\/(bbs)\.kafan\.cn/
// @include     /^https?\:\/\/(forum)\.gamer\.com\.tw/
// @include     /^https?\:\/\/(www)\.chiphell\.com/
// @version     1.0.5
// @grant       none
// ==/UserScript==

if (typeof unsafeWindow == "undefined")
{
    unsafeWindow = window;
}

/**
 * 获取立即执行的操作。
 */
const getInstantActions = function()
{
    const host = unsafeWindow.location.host;
    const actions = [];

    if (host === "forum.gamer.com.tw")
    {
        // 巴哈姆特。

        // 反反广告检测。
        const action = function()
        {
            if (unsafeWindow.AntiAd)
            {
                unsafeWindow.AntiAd.check = function() {};
            }
        };
        actions.push(action);
    }
    else if (
        host === "bbs.kafan.cn" ||
        host === "bbs.3dmgame.com" ||
        host === "www.chiphell.com"
    )
    {
        // 卡饭、3DMGame、Chiphell 论坛(Discuz 驱动的论坛)。

        // 屏蔽方向键翻页。
        const action = function()
        {
            if (unsafeWindow.keyPageScroll)
            {
                unsafeWindow.keyPageScroll = function() {};
            }
        };
        actions.push(action);
    }

    return actions;
};

/**
 * 获取延迟执行的操作。
 */
const getLazyActions = function()
{
    const host = unsafeWindow.location.host;
    const actions = [];

    if (host === "forum.gamer.com.tw")
    {
        // 巴哈姆特。

        // 自动开启图片。
        let action = function()
        {
            if (unsafeWindow.forumShowAllMedia)
            {
                unsafeWindow.forumShowAllMedia();
            }
        };
        actions.push(action);
    }

    return actions;
};

/**
 * 立即执行指定的操作。
 */
const exec = function(p_actions)
{
    if (p_actions)
    {
        p_actions.forEach(function(p_action)
        {
            p_action();
        });
    }
};

// 1. 立即执行。
exec(getInstantActions());


// 2. 延迟执行。
unsafeWindow.addEventListener("load", function()
{
    exec(getLazyActions());
}, true);