hjj工具

去刷屏,楼层无图

目前為 2017-05-16 提交的版本,檢視 最新版本

// ==UserScript==
// @name         hjj工具
// @namespace    http://tampermonkey.net/
// @version      0.4
// @description  去刷屏,楼层无图
// @author       miaomiao
// @match        http://bbs.jjwxc.net/board.php?board=*&type=*&page=*
// @match        http://bbs.jjwxc.net/showmsg.php?board=*&boardpagemsg=*&id=*
// @match        http://bbs.jjwxc.net/board.php?board=*&page=*
// @match        http://bbs.jjwxc.net/showmsg.php?board=*&id=*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    var mainElements = $("[id=topic]");
    mainElements.each(function(index) {
        var element = $(this);
        Spam(index, element);
        HidePictures(index, element);
    });

    function Spam(index, element) {
        var height = element.height();
        var lineHeight = parseInt(element.css("line-height"));
        var picHeight = CalPicHeight(element);
        var rowsCount = (height - picHeight) / lineHeight;
        var maxRowsCount = 15;
        var flag = rowsCount > maxRowsCount ? true : false;
        if (flag) {
            var picHtml = "";
            element.find("img").each(function() {
                picHtml += $(this).prop("outerHTML");
            });
            var allText = element.text().split("\n");
            var shownText = allText.slice(0, 15).join("<br>");
            var hidenText = allText.slice(15).join("<br>");
            element.html("");
            element.append("<p>" + shownText + "<span id='hideText" + index + "' style='display:none'><br>" + hidenText + "</span>" + "<a href='javascript:;' id='shownText" + index + "'>...显示全部</a></p>" + picHtml);
        }

        $(document).on("click", "#shownText" + index, function() {
            if (flag) {
                $("#shownText" + index).text("...隐藏");
                $("#hideText" + index).show();
                flag = false;
            } else {
                $("#shownText" + index).text("...显示全部");
                $("#hideText" + index).hide();
                flag = true;
            }
        });
    }

    function HidePictures(index, element) {
        var hideHtml = "<p><a href='javascript:;' id='hidePic" + index + "'>显示此楼图片</a></p>";
        var flag = true;
        var picHtml = "";
        var picNode = element.find("img");
        if (picNode.length !== 0) {
            element.html(hideHtml + element.html());
            picNode = element.find("img").hide();
        }
        $("#hidePic" + index).click(function() {
            if (flag) {
                $("#hidePic" + index).text("隐藏此楼图片");
                picNode.show();
                flag = false;
            } else {
                $("#hidePic" + index).text("显示此楼图片");
                picNode.hide();
                flag = true;
            }
        });
    }

    function CalPicHeight(element) {
        var height = 0;
        element.find("img").each(function() {
            height += $(this).height();
        });
        return height;
    }

})();