Greasy Fork

手机看图、小说适配

自动滚动,图片集合,页面旋转,字体放大,去除浮动广告,模拟点击

目前为 2023-12-18 提交的版本。查看 最新版本

// ==UserScript==
// @name         手机看图、小说适配
// @namespace    http://tampermonkey.net/
// @version      9.500.8.43
// @description  自动滚动,图片集合,页面旋转,字体放大,去除浮动广告,模拟点击
// @author       You
// @match        *://*/*
// @require      https://cdn.bootcss.com/jquery/3.7.1/jquery.min.js
// @run-at       document-body
// @license      MIT
// ==/UserScript==

this.$ = this.jQuery = jQuery.noConflict(true);

(function($) {

    'use strict';

    if (document.querySelector('.Jq-autoScroll-btn')) {
        return;
    }

    var DSImg = 1;

    function dqSelect(selectPath) {
        return document.querySelectorAll(selectPath);
    }

    function addStyle(styleStr, stId = null) {
        var style_node = document.createElement('style');
        style_node.type = 'text/css';
        style_node.innerHTML = styleStr;
        if (stId) {
            style_node.id = stId;
        }
        $(dqSelect('head'))[0].append(style_node);
    }

    var winWidth = $(dqSelect("html")).width(),
        winProp = window.innerHeight / window.innerWidth,
        winHeight = winWidth * winProp;

    var winW = winWidth > winHeight ? winHeight * 0.9 : winWidth;

    var wHeight = winW * 0.1;

    var SPicH = winWidth * 0.12;

    var top = (winHeight - wHeight) * 0.5;

    addStyle(
        `html,body,
        #Jq-autoScroll-ul {
            overflow-wrap: break-word !important;
            scroll-behavior: auto !important;
            filter: none !important;
            min-height: ${winHeight}px !important;
        }
        .Jq-pAbsolute {
            position: absolute !important;
        }
        .Jq-clickHide {
            display: none!important;
        }
        #Jq-autoScroll-ul,
        #Jq-autoScroll-ul img {
            min-width: auto !important;
            max-width: auto !important;
            border: 0 !important;
        }
        #Jq-wrap_rotate_inner {
            padding: 0;
            min-width: auto !important;
            max-width: auto !important;
            min-height: auto !important;
            max-height: auto !important;
            border: 0 !important;
            margin: 0 !important;
            height: inherit !important;
            overflow-wrap: break-word !important;
            scroll-behavior: auto !important;
            filter: none !important;
        }
        #Jq-autoScroll-ul,
        #Jq-autoScroll-ul *:not(.JsUl-PageNext) {
            box-sizing: border-box !important;
            margin: 0 !important;
            border-radius: 0 !important;
            float: none !important;
            opacity: 1 !important;
            visibility: visible !important;
            filter: none !important;
            max-height: auto !important;
        }
        #Jq-autoScroll-ul {
            width: 100% !important;
            height: auto !important;
            overflow: visible !important;
            text-align: left !important;
            display: block !important;
            position: relative !important;
            z-index: 2147483646 !important;
            font: 0 "Fira Sans", sans-serif !important;
            background: black !important;
            padding: ${0.2 * winHeight}px 0 ${0.5 * winHeight}px 0 !important;
        }
        #Jq-autoScroll-ul *{
            padding: 0 !important;
            position: static !important;
        }
        #Jq-autoScroll-ul *::before,
        #Jq-autoScroll-ul *::after {
            display: none !important;
        }
        #Jq-autoScroll-ul picture,
        #Jq-autoScroll-ul img {
            display: inline-block;
            width: 100%;
            height: auto;
            object-fit: contain !important;
            min-height: auto !important;
            background: gray !important;
        }
        #Jq-autoScroll-ul xmp,
        #Jq-autoScroll-ul a {
            color: #F2F2F2;
            background: black !important;
            vertical-align: top !important;
            overflow-wrap: break-word !important;
            min-height: auto !important;
            height: ${SPicH}px !important;
            overflow: hidden !important;
            font-size: ${winW * 0.045}px !important;
            cursor: pointer !important;
        }
        #Jq-autoScroll-ul a:visited {
            color: #741274 !important;
        }
        .JsUl-SmallPic {
            color: #82c7ff !important;
        }
        #Jq-autoScroll-ul xmp {
            display: none;
            white-space: pre-wrap !important;
            white-space: -moz-pre-wrap !important;
            white-space: -pre-wrap !important;
            white-space: -o-pre-wrap !important;
            word-wrap: break-word !important;
            text-align: left !important;
            border: 0 !important;
            line-height: 1.3 !important;
            width: auto !important;
            min-width: 52% !important;
            max-width: 76% !important;
        }
        #Jq-autoScroll-ul a{
            display: inline-block;
            line-height: normal !important;
            width: 12% !important;
            min-width: auto !important;
            max-width: auto !important;
            text-align: center !important;
            text-decoration: none !important;
            border: ${0.002 * winW}px solid red !important;
        }
        .Jq-autoScroll-btn {
            color: white;
            text-align: center !important;
            line-height: 2.8 !important;
            border-radius: 0 !important;
            cursor: pointer !important;
            z-index: 2147483647 !important;
            padding: 0 !important;
            border: 0 !important;
            font-weight: bold !important;
            filter: none !important;
            position: fixed !important;
            font-size: ${winW * 0.036}px !important;
            height: ${wHeight}px !important;
            max-height: auto !important;
            min-height: auto !important;
            width: ${wHeight}px !important;
            max-width: auto !important;
            min-width: auto !important;
        }
        .JsUl-PageNext,
        .pagetual_pageBar {
            display: block !important;
            height: 0 !important;
            min-height: auto !important;
            margin: 0 !important;
            border: 0 !important;
            padding: 0 !important;
            overflow: hidden !important;
        }
        .JsWord-TextBig {
            text-align: left !important;
            text-indent:2em !important;
            letter-spacing: normal !important;
            line-height: normal !important;
            filter: none !important;
            overflow-wrap: break-word !important;
        }
        .JsWord-TextBig:not(a,a *) {
            color: #F2F2F2 !important;
            background-color: black !important;
        }`
    );

    var jianG = wHeight;

    var left = 0;

    var left2 = wHeight + left;

    var left3 = wHeight + left2;

    var sameCss = "left:" + left + "px;";
    var sameCss2 = "left:" + left2 + "px;";
    var sameCss3 = "left:" + left3 + "px;";

    var scrollNum = parseInt(winW * 0.07);

    var scrollJu = 4;

    var picwh = 50;

    function addInput(id, value, style) {
        var input_node = document.createElement('div');
        input_node.setAttribute("class", "Jq-autoScroll-btn");
        input_node.setAttribute("id", id);
        input_node.innerHTML = value;
        input_node.setAttribute("style", style + ";background:black !important;");
        $(dqSelect("html"))[0].append(input_node);
    }

    addInput('Jq-autoScroll-del', 'X', sameCss + "top:" + (top) + "px");
    addInput('Jq-autoScroll-pic', 'P', sameCss + "top:" + (top - jianG) + "px");
    addInput('Jq-autoScroll-picwh', picwh, sameCss + "top:" + (top - 2 * jianG) + "px");
    addInput('Jq-autoScroll-DS', "S", sameCss + "top:" + (top - 3 * jianG) + "px");
    addInput('Jq-autoScroll-next', "N", sameCss + "top:" + (top - 4 * jianG) + "px");
    addInput('Jq-autoScroll-click', 'C', sameCss + "top:" + (top - 5 * jianG) + "px");

    addInput('Jq-autoScroll-Ju', scrollJu, sameCss2 + "top:" + (top) + "px");
    addInput('Jq-autoScroll-jian', '-', sameCss2 + "top:" + (top - jianG) + "px");
    addInput('Jq-autoScroll-jia', '+', sameCss2 + "top:" + (top - 2 * jianG) + "px");
    addInput('Jq-autoScroll-down', '▽', sameCss2 + "top:" + (top - 3 * jianG) + "px");
    addInput('Jq-autoScroll-up', '△', sameCss2 + "top:" + (top - 4 * jianG) + "px");
    addInput('Jq-autoScroll-scrollPH', "O", sameCss2 + "top:" + (top - 5 * jianG) + "px");

    addInput('Jq-autoScroll-transform', "T", sameCss3 + "top:" + (top) + "px");
    addInput('Jq-autoScroll-rotate', 'R', sameCss3 + "top:" + (top - jianG) + "px");
    addInput('Jq-autoScroll-width', 'W', sameCss3 + "top:" + (top - 2 * jianG) + "px");
    addInput('Jq-autoScroll-hide', 'H', sameCss3 + "top:" + (top - 3 * jianG) + "px");
    addInput('Jq-autoScroll-aWord', 'D', sameCss3 + "top:" + (top - 4 * jianG) + "px");

    setTimeout(function() {

        $(dqSelect('.Jq-autoScroll-btn')).each(function() {
            var _this = $(this);

            var _clone = _this.clone().removeAttr("id")
                .css('margin-left', (winHeight * winProp - winWidth * 0.8) + "px");

            _clone.on("scroll", function() {
                $(this).html(_this.html()).css("color", _this.css("color"));
            }).on("click", function() {
                _this.trigger("click");
                $(dqSelect(".Jq-autoScroll-btn")).trigger("scroll");
            }).appendTo($(dqSelect("html"))[0]);
        });

        delHide();

        if ($(dqSelect("#Jq-wrap_rotate_inner")).length == 0) {

            $("<div>").attr({
                id: "Jq-wrap_rotate_inner"
            }).append(returnBody()).appendTo($(dqSelect("body"))[0]);

            setInterval(function() {

                $(dqSelect('#Jq-wrap_rotate_inner')).append(returnBody());

            }, 4 * 1000);

            $(dqSelect("body")).filter(function() {
                return $(this).css("overflow-y") == "hidden";
            }).css("overflow-y", "scroll");

            $(dqSelect('video')).trigger('pause');

        }
    }, 10);

    $(dqSelect("html")).on('click', '#Jq-autoScroll-aWord', function() {
        if (document.querySelector("#Jq-allStrWord")) {
            $(dqSelect("#Jq-allStrWord")).remove();
            $(dqSelect('#Jq-autoScroll-aWord')).css("color", "white");
        } else {
            var allStr = "";
            $(dqSelect("body")).find(":not(style,script,noscript)").each(function() {
                var addStr = $(this).clone().children().remove().end().text().replace(/\s+/g, " ")
                if (addStr.replace(/[^一-鿯0-9]/g, "").length > 6) {
                    allStr += "<br><br>";
                }
                allStr += addStr + " ";
            });

            $(dqSelect("#Jq-wrap_rotate_inner")).prepend($("<div>").attr({
                id: "Jq-allStrWord",
            }).html(allStr));
            $(dqSelect('#Jq-autoScroll-aWord')).css("color", "green");
        }
    });

    var scrollPH = 0;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-scrollPH', function() {
        scrollPH += 1;
        if (scrollPH % 2 != 0) {
            $(dqSelect("#Jq-autoScroll-scrollPH")).css("color", "green");

        } else {
            $(dqSelect("#Jq-autoScroll-scrollPH")).css("color", "white");
        }
    });

    var _interval;
    $(dqSelect("html")).on('dblclick', '#Jq-autoScroll-click', function() {

        var _this = $(this);

        $(dqSelect(".Jq-autoScroll-btn")).hide();

        var _outStop = setTimeout(function() {

            $(document).off("click");

            $(dqSelect(".Jq-autoScroll-btn")).show();
        }, 3000);

        setTimeout(function() {

            $(document).on("click", function(event) {

                var _target = $(event.target);

                $(document).off("click");

                $(dqSelect(".Jq-autoScroll-btn")).show();

                clearTimeout(_outStop);

                if (_target.is("#Jq-autoScroll-click")) {
                    return
                }

                _this.css("color", "green");

                _interval = setInterval(function() {
                    _target.trigger("click");
                }, 500);
            });
        }, 100);

    }).on('click', '#Jq-autoScroll-click', function() {

        clearInterval(_interval);

        $(this).css("color", "white");
    });

    $(dqSelect("html")).on('click', '#Jq-autoScroll-next', function() {

        var _len = $(dqSelect(".JsUl-PageNext")).length;

        $(dqSelect(".JsUl-PageNext")).each(function(index, dom) {

            var offsetDiff = -0.5 * (xMove == 1 ? winWidth : winHeight);

            if (xMove == 1) {
                offsetDiff += $(this).offset().left - $(window).scrollLeft();

            } else {
                offsetDiff += $(this).offset().top - $(window).scrollTop();

            }

            if (offsetDiff > 1) {

                autoScrollBy(offsetDiff);

                $(dqSelect("#Jq-autoScroll-next")).html(index + 2);

                return false;
            }
            if (index == _len - 1) {
                _len = 0;
            }
        });
        if (_len == 0) {
            var ul_height = $(dqSelect("#Jq-autoScroll-ul")).height() + $(dqSelect("#Jq-autoScroll-ul")).offset().top;
            if (getScrollLeft() + getScrollTop() < ul_height) {
                autoScrollTo(ul_height);
            }
        }
    });

    function returnBody() {
        return $(dqSelect("html>*:not(head,body,.Jq-autoScroll-btn,#pagetual-picker),body>*:not(#Jq-wrap_rotate_inner)"));
    }

    var Dtransform = 0;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-transform', function() {

        Dtransform += 1;

        $(document.getElementById("#Jq-autoScroll-style_1")).remove();

        if (Dtransform % 2 != 0) {

            addStyle(
                "body {" +
                "transform: translate(0%, 0%) !important;}" +

                "#Jq-wrap_rotate_inner {" +
                "padding-bottom:" + (winHeight * 0.5) + "px !important;}",

                "#Jq-autoScroll-style_1"
            );

            $(dqSelect(":not(head *,.Jq-autoScroll-btn)")).filter(function() {
                return /sticky|fixed/.test($(this).css("position"));
            }).addClass("Jq-pAbsolute");

            $(dqSelect("#Jq-wrap_rotate_inner")).css("padding-top", (1.5 * winHeight) + "px");

            autoScrollBy(1.5 * winHeight);

            $(dqSelect("#Jq-autoScroll-transform")).css("color", "green");

        } else {

            $(dqSelect(".Jq-pAbsolute")).removeClass("Jq-pAbsolute");

            $(dqSelect("#Jq-wrap_rotate_inner")).css("padding-top", "0");

            autoScrollBy(-1.5 * winHeight);

            $(dqSelect("#Jq-autoScroll-transform")).css("color", "white");
        }
    });

    $(dqSelect("#Jq-autoScroll-DS")).css("color", "green");

    $(dqSelect("html")).on('click', '#Jq-autoScroll-DS', function() {

        DSImg += 1;
        if (DSImg == 2) {
            DSImg = 0;
            $(dqSelect("#Jq-autoScroll-DS")).css("color", "white");
        } else {
            $(dqSelect("#Jq-autoScroll-DS")).css("color", "green");
        }
        if (picZ > 0) {
            picZ -= 1;
            $(dqSelect("#Jq-autoScroll-pic")).trigger("click");
        }
    });

    var Drotate = 0;
    var xMove = 0;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-rotate', function() {

        Drotate += 1;

        if (Drotate % 2 != 0) {

            var _scrollTop = getScrollTop();

            $(dqSelect("#Jq-autoScroll-rotate")).css("color", "green");

            $(dqSelect("html,body,div")).filter(function() {
                return $(this).css("overflow-y") != "hidden" &&
                    $(this).css("overflow-x") == "hidden" &&
                    $(this).height() > 0.5 * winHeight;
            }).css("overflow-x", "scroll");

            autoScrollTo(0);

            setTimeout(function() {

                $(dqSelect('#Jq-wrap_rotate_inner')).attr('style',

                    "float: right !important;" +
                    "position: relative !important;" +
                    "left: -100% !important;" +

                    "padding-bottom:" + (winHeight * winProp - 0.6 * winWidth) + "px !important;" +

                    "transform: rotateZ(-90deg) !important;" +
                    "transform-origin: 100% 0 !important;" +
                    "-webkit-transform: rotateZ(-90deg) !important;" +
                    "-webkit-transform-origin: 100% 0 !important;" +
                    "-moz-transform: rotateZ(-90deg) !important;" +
                    "-moz-transform-origin: 100% 0 !important;" +

                    "width: " + winHeight + "px !important;"

                );

                xMove = 1;

                autoScrollTo(_scrollTop * winProp);

            }, 100);

        } else {

            var _scrollLeft = getScrollLeft();

            $(dqSelect("#Jq-autoScroll-rotate")).css("color", "white");

            autoScrollTo(0);

            setTimeout(function() {

                $(dqSelect("#Jq-wrap_rotate_inner")).removeAttr("style");

                xMove = 0;

                autoScrollTo(_scrollLeft / winProp);

            }, 100);
        }
    });

    function getScrollLeft() {
        return $(dqSelect("html")).scrollLeft() + $(dqSelect("body")).scrollLeft();

    }

    function getScrollTop() {
        return $(dqSelect("html")).scrollTop() + $(dqSelect("body")).scrollTop();

    }

    var pauseScroll = 0;
    var Dpause;

    $(dqSelect("#Jq-autoScroll-Ju,#Jq-autoScroll-down,#Jq-autoScroll-up")).addClass("Jq-autoScroll-move");

    $(dqSelect("html")).on('click', "a,#Jq-autoScroll-down,#Jq-autoScroll-up", function() {

        if (Dscroll % 2 != 0) {
            $(dqSelect("#Jq-autoScroll-Ju")).trigger("click");
        }
        setTimeout(function() {
            if (Dscroll % 2 != 0) {
                $(dqSelect("#Jq-autoScroll-Ju")).trigger("click");
            }
        }, 300);
    });

    function stopPause() {

        if (pauseScroll == 1) {

            clearTimeout(Dpause);

            Dpause = setTimeout(function() {

                pauseScroll = 0;

                if (Dscroll % 2 == 0) {

                    $(dqSelect("#Jq-autoScroll-Ju")).trigger("click");
                }
            }, 200);
        }
    }

    $(dqSelect("html")).on("touchstart", ":not(.Jq-autoScroll-move)", function() {

        if (Dscroll % 2 != 0) {

            $(dqSelect("#Jq-autoScroll-Ju")).trigger("click");

            pauseScroll = 1;
        }
    }).on("touchend", function() {

        stopPause();
    });

    $(document).scroll(function() {

        stopPause();
    });

    function visibleDiv() {
        return $(dqSelect("div")).filter(function() {

            return $(this).css("overflow-y") != "hidden" &&
                $(this).height() > 0.5 * winHeight;
        });
    }

    function autoScrollBy(scrollBy_Ju, speed = 0) {

        if (scrollPH % 2 == 0) {

            if (xMove == 1) {

                $(dqSelect("html,body")).stop().animate({
                    scrollLeft: "+=" + scrollBy_Ju + "px"
                }, speed, "linear");

            } else {

                $(dqSelect("html,body")).stop().animate({
                    scrollTop: "+=" + scrollBy_Ju + "px"
                }, speed, "linear");
            }
        } else {

            visibleDiv().stop().animate({
                scrollTop: "+=" + scrollBy_Ju + "px"
            }, speed, "linear");
        }
    }

    function autoScrollTo(scrollTo_Ju, speed = 0) {

        if (scrollPH % 2 == 0) {

            if (xMove == 1) {

                $(dqSelect("html,body")).stop().animate({
                    scrollLeft: scrollTo_Ju
                }, speed, "linear");

            } else {

                $(dqSelect("html,body")).stop().animate({
                    scrollTop: scrollTo_Ju
                }, speed, "linear");
            }
        } else {

            visibleDiv().stop().animate({
                scrollTop: scrollTo_Ju
            }, speed, "linear");
        }
    }

    var widthN = 13;
    var fontZ, fSize;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-width', function() {

        function interFn() {

            $(dqSelect(":not(.JsWord-TextBig,#Jq-autoScroll-ul,#Jq-autoScroll-ul *,.Jq-autoScroll-btn)")).filter(function() {

                var _textLen = $(this).clone().children().remove().end().text()
                    .replace(/[0-9\s]+/g, "").length;

                if (_textLen > 0) {
                    return true;
                } else {
                    return false;
                }
            }).addClass("JsWord-TextBig");

            $(dqSelect(".JsWord-TextBig")).css(wordCss);

            var _scale = fSize != "inherit" ? parseInt(fSize / 23 * 100) / 100 : 1;

            var DShadow = "grayscale(100%) contrast(200%) brightness(1000%)";

            $(dqSelect(".JsWord-TextBig")).has(">em:not(.JsWord-TextBig),>img").find("em:not(.JsWord-TextBig),img").css({

                "transform": "scale(" + _scale + ")",
                "-webkit-transform": "scale(" + _scale + ")",
                "-moz-transform": "scale(" + _scale + ")",

                "margin": "0 " + (_scale * 9 - 9) + "px",

                "filter": DShadow,
                "-webkit-filter": DShadow,
                "-moz-filter": DShadow,

            });

            if (fSize == "inherit") {
                $(dqSelect(".JsWord-TextBig")).removeClass("JsWord-TextBig");
            }
        }

        fSize = widthN > 15 ? "inherit" : parseInt(winWidth / widthN);

        var wordCss = {
            "font-size": fSize
        };

        clearInterval(fontZ);
        interFn();

        if (fSize != "inherit") {
            fontZ = setInterval(interFn, 4 * 1000);
            $(dqSelect("#Jq-autoScroll-width")).html(20 - widthN).css("color", "green");

        } else {
            $(dqSelect("#Jq-autoScroll-width")).html("W").css("color", "white");
            widthN -= 2 * 3;
        }

        widthN += 2;

    });

    function picSizeOut(_this, picwh_2 = null) {

        var natureW = _this.naturalWidth;

        var natureH = _this.naturalHeight;

        if (!picwh_2) {
            picwh_2 = picwh;
        }

        return natureW >= picwh_2 && natureH >= picwh_2 &&
            natureW / natureH <= 6;

    }

    $(dqSelect("html")).on('click', "#Jq-autoScroll-hide", function() {

        $(dqSelect(".Jq-autoScroll-btn")).hide();

        var _outStop = setTimeout(function() {

            $(document).off("touchstart");

            $(dqSelect(".Jq-autoScroll-btn")).show();

            $(dqSelect(".Jq-clickHide")).removeClass("Jq-clickHide");

            $(dqSelect("#Jq-autoScroll-hide")).css("color", "white");

        }, 3000);

        setTimeout(function() {

            $(document).on("touchstart", function(event) {

                var _target = $(event.target);

                $(document).off("touchstart");

                $(dqSelect(".Jq-autoScroll-btn")).show();

                clearTimeout(_outStop);

                _target.addClass("Jq-clickHide");

                $(dqSelect("#Jq-autoScroll-hide")).css("color", "green");

            });
        }, 100);

    });

    $(dqSelect("html")).on('click', "#Jq-autoScroll-picwh", function() {

        $(dqSelect(".Jq-autoScroll-btn")).hide();

        var _outStop = setTimeout(function() {

            $(document).off("click");

            $(dqSelect(".Jq-autoScroll-btn")).show();
        }, 3000);

        setTimeout(function() {

            $(document).on("click", function(event) {

                var _target = $(event.target);

                $(document).off("click");

                $(dqSelect(".Jq-autoScroll-btn")).show();

                clearTimeout(_outStop);

                if (_target.is("#Jq-autoScroll-ul .JsUl-Imgloaded")) {

                    if (_target[0].naturalWidth < _target[0].naturalHeight) {

                        picwh = _target[0].naturalWidth + 1;
                    } else {
                        picwh = _target[0].naturalHeight + 1;
                    }
                    if (picwh < 50) {

                        picwh = 50;
                    }
                } else {
                    picwh = 50;
                }

                if (picZ == 1) {

                    $(dqSelect("#Jq-autoScroll-ul br")).hide();

                    $(dqSelect("#Jq-autoScroll-ul xmp")).hide();

                    $(dqSelect("#Jq-autoScroll-ul .JsUl-Imgloaded")).filter(function() {
                        return picSizeOut(this);
                    }).each(function() {

                        $(this).closest("#Jq-autoScroll-ul > *")
                            .nextAll("br").slice(0, 9).show();

                        $(this).closest("#Jq-autoScroll-ul > *")
                            .nextAll("xmp").slice(0, 9).css("display", "inline-block");

                    }).css({
                        width: "100%",
                        height: "auto"
                    }).closest("picture").css({
                        width: "100%",
                        height: "auto"
                    });

                    $(dqSelect("#Jq-autoScroll-ul .JsUl-Imgloaded")).filter(function() {
                        return !picSizeOut(this);
                    }).css({
                        width: "12%",
                        height: SPicH
                    }).closest("picture").css({
                        width: "12%",
                        height: SPicH
                    });

                } else {

                    $(dqSelect("#Jq-autoScroll-ul .JsUl-Imgloaded")).filter(function() {
                        return picSizeOut(this);
                    }).show().closest("picture").show();

                    $(dqSelect("#Jq-autoScroll-ul .JsUl-Imgloaded")).filter(function() {
                        return !picSizeOut(this);
                    }).hide().closest("picture").hide();
                }

                $(dqSelect("#Jq-autoScroll-picwh")).html(picwh);

            });
        }, 100);

    });

    var timeout_1;

    $(dqSelect("html")).on('touchstart', '#Jq-autoScroll-pic', function() {
        timeout_1 = setTimeout(function() {

            if (picZ > 0) {
                picZ -= 1;
                $(dqSelect("#Jq-autoScroll-pic")).trigger("click");
            }

        }, 500);
    }).on('touchend', '#Jq-autoScroll-pic', function() {
        clearTimeout(timeout_1);
    });

    var widthZ,
        picZ = 0;

    $(dqSelect("html")).on('click', "#Jq-autoScroll-pic", function() {
        getImgArr();
    });

    function getImgArr() {

        function interFn() {

            var newImgArr = [];

            var _text = $(dqSelect("html")).clone().find("head,style,script,noscript").remove().end().text()
                .match(/http.*?[.](xbm|tif|pjp|svgz|jpg|jpeg|ico|tiff|gif|svg|jfif|webp|png|bmp|pjpeg|avif)/g);

            function testHref(_href) {
                return !/^javascript:|^#($|[A-Za-z_][A-Za-z0-9_]*$)/.test(_href.trim());
            }

            $(dqSelect("a")).filter(function() {
                return $(this).attr("href") && testHref($(this).attr("href")) && !/_blank/.test($(this).attr("target"));
            }).attr({
                target: "_blank",
                rel: "noopener noreferrer"
            });

            $(dqSelect(":not(html,.JsPic-ImgSelected,picture *,#Jq-autoScroll-ul *)")).filter(function() {

                var _img = $(this);
                return _img.is("a,img,:has(img),.pagetual_pageBar") || _img.css("background-image").split(/[""'']/).length > 1;

            }).each(function(inum, dom) {

                var dataObj = [],
                    _img = $(this);

                _img.addClass("JsPic-ImgSelected");

                if (_img.is(".pagetual_pageBar")) {

                    newImgArr.push($("<div>").attr({
                        class: "JsUl-PageNext"
                    }));
                }

                if (picZ == 2 && inum == 0 && _text) {
                    dataObj = dataObj.concat(_text);
                }

                var _picStr = null;

                if (_img.is("picture")) {

                    _picStr = $("<picture>");

                    var _picChild;

                    _img.children().each(function() {

                        if ($(this).is("img")) {
                            _picChild = $("<img>").attr({
                                width: "300",
                                height: "100"
                            });
                        } else {
                            _picChild = $("<source>");
                        }
                        _picStr.append(_picChild.attr({
                            alt: $(this).attr("alt") ? "JU-IMG" : null,
                            src: $(this).attr("src") ? $(this).attr("src") : null,
                            srcset: $(this).attr("srcset") ? $(this).attr("srcset") : null,
                            media: $(this).attr("media") ? $(this).attr("media") : null,
                            type: $(this).attr("type") ? $(this).attr("type") : null,
                        }));

                        preImgArr.push($(this).attr("srcset") ? $(this).attr("srcset") :
                            $(this).attr("src") ? $(this).attr("src") : null);
                    });

                    _picStr = _picStr.prop("outerHTML");

                    if (preImgArr.indexOf(_picStr) == -1) {

                        preImgArr.push(_picStr);

                        newImgArr.push(_picStr);
                    } else {
                        _picStr = null;
                    }
                }

                var _backImg = _img.css("background-image").split(/[""'']/);

                dataObj.push(
                    _img.attr("src") ? _img.attr("src") : null,
                    _backImg.length > 1 ? _backImg[1] : null
                );

                if (DSImg != 0) {

                    var _attributes = [],
                        _data = Object.values(_img.data());

                    _attributes.push(_img[0].attributes);

                    if (_img.is("picture")) {

                        _img.children().each(function() {

                            _attributes.push($(this)[0].attributes);

                            _data = _data.concat(Object.values($(this).data()));
                        });
                    }

                    _attributes.forEach(function(attrs) {

                        $.each(attrs, function(index, item) {

                            if (!/^(src|style|srcset|class|id|type|href|onclick)$|^data-|^:/.test(item.name)) {

                                _data.push(item.value);
                            }
                        });
                    });

                    _data.forEach(function(i) {

                        if (typeof i == "object") {

                            try {
                                i = JSON.stringify(i);

                            } catch (error) {

                                i = null;
                            }
                        }

                        if (typeof i != "string") {

                            return
                        }

                        if (/[""'']/.test(i)) {

                            var _isp = i.split(/[""'']/).filter(function(j) {

                                return j.length > 9 && /^http/.test(j.trim());
                            });
                            dataObj = dataObj.concat(_isp);

                        } else if (/%22%2C%22/.test(i)) {

                            var _isp = i.split(/%22/).filter(function(j) {

                                return j.length > 9 && /^http/.test(j.trim());

                            });
                            dataObj = dataObj.concat(_isp);

                        } else {
                            dataObj.push(i);
                        }
                    });
                }

                dataObj = Array.from(new Set(dataObj));

                var _imgStr = null;

                dataObj.forEach(function(i) {

                    if (typeof i != "string") {

                        return
                    }

                    i = i.trim();

                    try {
                        i = decodeURIComponent(i);
                        i = decodeURI(i);
                        i = unescape(i);
                    } catch (error) {
                        console.log(error);
                    }

                    if (/^data:image/.test(i)) {
                        i = i.replace(/[^A-Za-z0-9+/=>;]{0,9}$/, "");
                    }

                    if (/^[a-z/]/.test(i) && /[?/]/.test(i) &&
                        !/[.](txt|shtml|html|htm)$/.test(i) &&
                        preImgArr.indexOf(i) == -1) {

                        preImgArr.push(i);

                        _imgStr = $("<img>").attr({
                            src: i,
                            loading: "lazy",
                            alt: "JU-IMG",
                            width: "300",
                            height: "100",
                            srcset: _img.attr("srcset") ? _img.attr("srcset") : null
                        }).prop("outerHTML");

                        newImgArr.push(_imgStr);
                    }
                });

                if (_imgStr || _picStr) {

                    var _a = _img.find("a").first();

                    if (_a.length == 0) {

                        _a = _img.closest("a");
                    }

                    var _img_2 = _img;

                    for (var i = 0; i < 9; i++) {

                        if (_a.length > 0 || _img_2.is("body")) {

                            break
                        } else {

                            _a = _img_2.siblings("a").first();

                            if (_a.length == 0) {

                                _a = _img_2.siblings().find("a").first();
                            }

                            _img_2 = _img_2.parent();
                        }
                    }

                    var _newA = $("<a>").html("IMG");

                    _newA.on("click", function() {
                        _img.trigger("click");
                    });

                    function returnLength(lStr) {
                        return lStr.replace(/[0-9\s]+/g, "").replace(/[一-龟]/g, "aa").length > 9;
                    }

                    var _imgText = _img.clone().find("style,script,noscript").remove().end().text();

                    var _pStr = (_img.attr("alt") && returnLength(_img.attr("alt")) ? _img.attr("alt") :
                        _img.attr("title") ? _img.attr("title") :
                        returnLength(_imgText) ? _imgText :
                        "");

                    if (_a.length > 0) {

                        var _a_2 = _a;

                        for (var i = 0; i < 9; i++) {

                            if (_pStr != "" || _a_2.is("body")) {

                                break
                            } else {

                                _imgText = _a_2.clone().find("style,script,noscript").remove().end().text();

                                _pStr = (_a_2.attr("title") ? _a_2.attr("title") :
                                    returnLength(_imgText) ? _imgText :
                                    "");

                                _a_2 = _a_2.parent();
                            }
                        }

                        _newA.on("click", function() {
                            _a.trigger("click");
                        });

                        var _aHref = _a.attr("href");

                        if (_aHref) {

                            if (_img.is("a") || _img.closest("a").length == 0) {

                                _newA.attr({
                                    href: _aHref
                                });

                            }

                            if (testHref(_aHref)) {

                                _newA.attr({
                                    target: "_blank",
                                    rel: "noopener noreferrer"
                                });

                            }

                            var hrefImg = _aHref.match(/http.*?[.](xbm|tif|pjp|svgz|jpg|jpeg|ico|tiff|gif|svg|jfif|webp|png|bmp|pjpeg|avif)/g);

                            if (DSImg != 0 && hrefImg) {

                                hrefImg = hrefImg[0];

                                try {
                                    hrefImg = decodeURIComponent(hrefImg);
                                    hrefImg = decodeURI(hrefImg);
                                    hrefImg = unescape(hrefImg);
                                } catch (error) {
                                    console.log(error);
                                }

                                if (preImgArr.indexOf(hrefImg) == -1) {

                                    preImgArr.push(hrefImg);

                                    _imgStr = $("<img>").attr({
                                        src: hrefImg,
                                        loading: "lazy",
                                        alt: "JU-IMG",
                                        width: "300",
                                        height: "100",
                                        srcset: _img.attr("srcset") ? _img.attr("srcset") : null
                                    }).prop("outerHTML");

                                    newImgArr.push(_imgStr);
                                }
                            }
                        }
                    }

                    newImgArr.push(_newA,
                        $("<xmp>").html(_pStr.trim().replace(/\s+/g, " ").substring(0, 99)));
                }
            });

            newImgArr = Array.from(new Set(newImgArr));

            if (newImgArr.toString() != imgArr.toString()) {

                var newArrEx = newImgArr.filter(function(n) {
                    return imgArr.indexOf(n) == -1;
                });

                imgArr = imgArr.concat(newArrEx);

                $(dqSelect("#Jq-autoScroll-ul")).append(newArrEx);

                $(dqSelect("#Jq-autoScroll-ul img")).on("error", function() {

                    if ($(this).attr("src").indexOf("=http") > -1) {
                        $(this).attr("src", $(this).attr("src").replace(/(?<==http.*?)&.*$/, "").replace(/^.*=(?=http)/, ""));
                    }

                    if (picZ == 1 && !/^data:image/.test($(this).attr("src").trim())) {
                        $(this).css({
                            width: "12%",
                            height: SPicH
                        }).closest("picture").css({
                            width: "12%",
                            height: SPicH
                        });
                    } else {
                        $(this).hide().closest("picture").hide();
                    }
                });

                $(dqSelect("#Jq-autoScroll-ul img")).on("load", function() {

                    $(this).addClass("JsUl-Imgloaded");

                    if (picZ == 1 && picSizeOut(this, 50)) {

                        $(this).closest("#Jq-autoScroll-ul > *")
                            .nextAll("a").slice(0, 9).not("br + a").before("<br>");

                    }

                    if (picSizeOut(this)) {

                        if (picZ == 1) {
                            $(this).css({
                                width: "100%",
                                height: "auto"
                            }).closest("picture").css({
                                width: "100%",
                                height: "auto"
                            });

                            $(this).closest("#Jq-autoScroll-ul > *")
                                .nextAll("br").slice(0, 9).show();

                            $(this).closest("#Jq-autoScroll-ul > *")
                                .nextAll("xmp").slice(0, 9).css("display", "inline-block");

                        } else {
                            $(this).show().closest("picture").show();
                        }

                    } else {

                        if (picZ == 1) {
                            $(this).css({
                                width: "12%",
                                height: SPicH
                            }).closest("picture").css({
                                width: "12%",
                                height: SPicH
                            });
                        } else {
                            $(this).hide().closest("picture").hide();
                        }
                    }
                });
            }
            if (picZ == 2) {
                $(dqSelect("#Jq-autoScroll-ul > *:not(img,picture)")).hide();
            }
        }

        clearInterval(widthZ);

        $(dqSelect("#Jq-autoScroll-ul")).remove();

        picZ += 1;

        if (picZ < 3) {

            $(dqSelect("#Jq-wrap_rotate_inner")).prepend("<div id='Jq-autoScroll-ul'>");

            picwh = 50;

            var imgArr = [],
                preImgArr = [];

            $(dqSelect(".JsPic-ImgSelected")).removeClass("JsPic-ImgSelected");

            $(dqSelect("#Jq-autoScroll-picwh")).html(picwh);

            $(dqSelect("#Jq-autoScroll-pic")).css("color", "green").html(picZ);

            interFn();

            widthZ = setInterval(interFn, 6000);

        } else {

            $(dqSelect("#Jq-autoScroll-pic")).css("color", "white").html("P");

            picZ = 0;
        }
    }

    $(dqSelect("html")).on('click', function(event) {

        var _target = $(event.target);

        if (_target.is(".JsWord-TextBig,.JsWord-TextBig *,:has(>.JsWord-TextBig)")) {

            autoScrollBy((xMove == 1 ? winWidth : winHeight) - parseInt(fSize) * 1.4);

        } else if (!_target.is("a,a *") &&
            (_target.is("img,:has(>img,>picture),#Jq-autoScroll-ul *") ||
                _target.css("background-image").split(/[""'']/).length > 1)) {

            if (_target.is("img:not(#Jq-autoScroll-ul *)") &&
                _target[0].naturalWidth && !picSizeOut(_target[0], 50)) {
                return
            }

            autoScrollBy(0.4 * (xMove == 1 ? winWidth : winHeight));
        }
    });

    var Dxy = 0;
    var pageX;
    var pageY;
    var timeHu;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-down', function() {

        var toH_2 = -(xMove == 1 ? winWidth : winHeight);

        if (Dtransform % 2 != 0) {
            toH_2 += 1.5 * winHeight;
        }
        var toH = toH_2;

        if (scrollPH % 2 == 0) {

            $(dqSelect("html>*:not(head,body,.Jq-autoScroll-btn),body>*:not(#Jq-wrap_rotate_inner),#Jq-wrap_rotate_inner>*")).each(function() {
                toH += $(this).outerHeight();
            });

            var _wrapHeight = toH_2 + $(dqSelect("#Jq-wrap_rotate_inner")).height();

            if (_wrapHeight < toH && _wrapHeight > toH - 2 * winHeight) {
                toH = _wrapHeight;
            }
        } else {
            toH = 1000 * winHeight;
        }

        if (toH < toH_2 + 2 * winHeight) {
            toH = 1000 * winHeight;
        }

        Dxy += 1;

        clearTimeout(timeHu);

        if (Dxy % 2 == 1) {

            pageX = getScrollLeft();

            pageY = getScrollTop();

            autoScrollTo(toH, "slow");

            $(dqSelect("#Jq-autoScroll-down")).html("=");
            $(dqSelect("#Jq-autoScroll-up")).html("=");

            timeHu = setTimeout(function() {
                Dxy += 1;
                $(dqSelect("#Jq-autoScroll-up")).html("△");
                $(dqSelect("#Jq-autoScroll-down")).html("▽");

            }, scrollPH % 2 == 0 ? 15 * 1000 : 0);

        } else {
            autoScrollTo(xMove == 1 ? pageX : pageY);

            setTimeout(function() {

                if (picZ > 0) {
                    $(dqSelect(".JsPic-ImgSelected")).removeClass("JsPic-ImgSelected");
                }
            }, 200);

            $(dqSelect("#Jq-autoScroll-up")).html("△");
            $(dqSelect("#Jq-autoScroll-down")).html("▽");

        }
    });

    var timeout_6;
    $(dqSelect("html")).on('touchstart', '#Jq-autoScroll-down,#Jq-autoScroll-up', function() {
        timeout_6 = setTimeout(function() {

            if (Dxy % 2 == 1) {
                Dxy = 0;
                $(dqSelect("#Jq-autoScroll-up")).html("△");
                $(dqSelect("#Jq-autoScroll-down")).html("▽");
            }

        }, 600);
    }).on('touchend', '#Jq-autoScroll-down,#Jq-autoScroll-up', function() {
        clearTimeout(timeout_6);
    });

    $(dqSelect("html")).on('click', '#Jq-autoScroll-up', function() {

        Dxy += 1;

        clearTimeout(timeHu);

        if (Dxy % 2 == 1) {

            pageX = getScrollLeft();

            pageY = getScrollTop();

            if (Dtransform % 2 != 0) {

                autoScrollTo(1.5 * winHeight);
            } else {
                autoScrollTo(0);
            }
            $(dqSelect("#Jq-autoScroll-down")).html("=");
            $(dqSelect("#Jq-autoScroll-up")).html("=");

            timeHu = setTimeout(function() {
                Dxy += 1;
                $(dqSelect("#Jq-autoScroll-up")).html("△");
                $(dqSelect("#Jq-autoScroll-down")).html("▽");

            }, scrollPH % 2 == 0 ? 15 * 1000 : 0);

        } else {
            autoScrollTo(xMove == 1 ? pageX : pageY);

            $(dqSelect("#Jq-autoScroll-up")).html("△");
            $(dqSelect("#Jq-autoScroll-down")).html("▽");

        }
    });

    $(dqSelect("#Jq-autoScroll-del")).addClass("Jq-autoScroll-show");

    function delHide() {

        $(dqSelect(".Jq-autoScroll-btn")).hide();

        $(dqSelect(".Jq-autoScroll-show")).show().css({
            "opacity": "0.3"
        });

        Dhide = 1;
    }

    var Dhide = 0;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-del', function() {

        if (Dhide % 2 == 0) {

            delHide();
        } else {

            Dhide = 0;

            $(dqSelect(".Jq-autoScroll-btn")).show().css({
                "opacity": "0.6"
            });
        }
    });

    var timeout_2;
    $(dqSelect("html")).on('touchstart mousedown', '#Jq-autoScroll-del', function() {
        timeout_2 = setTimeout(function() {

            $(dqSelect(".Jq-autoScroll-btn")).hide();

        }, 600);
    }).on('touchend mouseup', '#Jq-autoScroll-del', function() {
        clearTimeout(timeout_2);
    });

    var timeout_3;
    $(dqSelect("html")).on('touchstart mousedown', function(event) {

        if ($(event.target).is(".Jq-autoScroll-btn")) {
            return false;
        }

        timeout_3 = setTimeout(function() {

            delHide();
        }, 500);
    }).on('touchend touchmove mouseup', function() {
        clearTimeout(timeout_3);
    });

    $(dqSelect("html")).on('click', '#Jq-autoScroll-jia', function() {

        scrollJu += 1;

        $(dqSelect("#Jq-autoScroll-Ju")).html(scrollJu);
    });

    $(dqSelect("html")).on('click', '#Jq-autoScroll-jian', function() {

        scrollJu -= 1;

        $(dqSelect("#Jq-autoScroll-Ju")).html(scrollJu);
    });

    var Dscroll = 0;
    var timeDown;

    $(dqSelect("html")).on('click', '#Jq-autoScroll-Ju', function() {

        Dscroll += 1;
        clearInterval(timeDown);

        if (Dscroll % 2 != 0) {
            $(dqSelect("#Jq-autoScroll-Ju")).css("color", "green");

            var animateTime = 1000;

            autoScrollBy(scrollJu * scrollNum, animateTime);

            timeDown = setInterval(function() {

                autoScrollBy(scrollJu * scrollNum, animateTime);

            }, animateTime + 10);

        } else {
            $(dqSelect("html,body")).stop();

            visibleDiv().stop();

            $(dqSelect("#Jq-autoScroll-Ju")).css("color", "white");
        }
    });

    // Your code here...
})(this.jQuery);