MangaPark Image Fix

Forces MangaPark images to use priority hosts (s01 > s03 > s05 > s06 > s00 > s04)

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         MangaPark Image Fix
// @namespace    https://mangapark.net/
// @version      1.0
// @description  Forces MangaPark images to use priority hosts (s01 > s03 > s05 > s06 > s00 > s04)
// @match        *://*.mangapark.org/*
// @match        *://*.mangapark.net/*
// @match        *://*.mangapark.to/*
// @match        *://*.mangapark.io/*
// @match        *://*.comicpark.org/*
// @match        *://*.comicpark.to/*
// @match        *://*.readpark.org/*
// @match        *://*.readpark.net/*
// @match        *://*.mpark.to/*
// @match        *://*.fto.to/*
// @match        *://*.jto.to/*
// @run-at       document-end
// @grant        none
// @license      MIT
// ==/UserScript==
(function () {
    const hosts = ['01', '03', '05', '06', '00', '04'];
    let index = 0;

    const fix = () =>
        document.querySelectorAll('img[src*=".mp"]').forEach(img => {
            const orig = img.src;
            const next = orig.replace(/s0\d\.mp|s10\.mp/g, `s${hosts[index]}.mp`);
            if (orig !== next) {
                img.src = next;
                img.onerror = () => {
                    index = (index + 1) % hosts.length;
                    if (index !== 0) {
                        img.src = orig.replace(/s0\d\.mp|s10\.mp/g, `s${hosts[index]}.mp`);
                    }
                };
            }
        });
    fix();
    new MutationObserver(fix).observe(document.body, { childList: true, subtree: true });
})();