Greasy Fork is available in English.

【省一省 领优惠券 高额返现】--淘宝、天猫、京东内部优惠券,可显示返现金额,配合APP扫码下单后即可获得返现~~长期更新,放心使用。

在淘宝、天猫、京东的【商品列表页】和【商品详情页】上显示优惠券详细信息及返现金额,无需进入商品详情页即可查看,商品详情页可直接领券,功能简单,显示直观,支持在商品详情页通过「花前省一省」APP扫码,直接在APP进入商品、领券及获得返现。在代码的编写过程中,参考了作者@simples的代码,受益匪浅。

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

// ==UserScript==
// @name         【省一省 领优惠券 高额返现】--淘宝、天猫、京东内部优惠券,可显示返现金额,配合APP扫码下单后即可获得返现~~长期更新,放心使用。
// @namespace    cyzlizhe
// @version      1.0
// @description  在淘宝、天猫、京东的【商品列表页】和【商品详情页】上显示优惠券详细信息及返现金额,无需进入商品详情页即可查看,商品详情页可直接领券,功能简单,显示直观,支持在商品详情页通过「花前省一省」APP扫码,直接在APP进入商品、领券及获得返现。在代码的编写过程中,参考了作者@simples的代码,受益匪浅。
// @author       cyzlizhe
// @icon         https://s1.ax1x.com/2020/09/15/wybNRS.png
// @match        *://*.taobao.com/*
// @match        *://*.tmall.com/*
// @match        *://*.tmall.hk/*
// @match        *://*.liangxinyao.com/*
// @match        *://*.jd.com/*
// @match        *://*.jd.hk/*
// @exclude      *://login.taobao.com/*
// @exclude      *://pages.tmall.com/*
// @exclude      *://uland.taobao.com/*
// @require      https://cdn.bootcdn.net/ajax/libs/jquery/1.6.3/jquery.js
// @require      https://cdn.bootcss.com/jquery.qrcode/1.0/jquery.qrcode.min.js
// @require      https://cdn.bootcdn.net/ajax/libs/apexcharts/3.9.0/apexcharts.min.js
// @run-at       document-start
// @grant       GM_xmlhttpRequest
// @connect     gwdang.com
// @note    2020年9月21日08:43:03 修复历史价格不显示的bug,调用购物党接口,增加验证环节,验证后可自动刷新显示。
// @note    2020年9月18日18:03:50 新增历史价格显示(目前只支持淘宝),点击可以隐藏/显示,修复京东详情页,价格出来的慢时候代码报错
// @note    2020年9月17日12:49:27 修复部分页面下优惠券会出现两个的问题。
// @note    2020年9月16日15:05:21 修复京东列表页懒加载后隐藏标签无效的bug,修复部分阿里健康大药房不显示优惠券的bug
// @note    2020年9月15日16:05:04 新增对京东新款,京东优评页面的支持,部分界面调整
// @note    2020年9月14日17:32:30 更新,修复部分页面不显示的bug,修复返现金额显示不准确。
// @note    2020年9月13日22:57:15 更新,新增京东优惠券及返现的支持,修复上一版中天猫超市优惠券查询无反应的bug。
// @note    2020年9月10日11:37:20 更新,修复返现金额查询时间长的bug,京东的查券返现功能正在适配中。
// ==/UserScript==

(function () {
    "use strict";

    var $2 = $.noConflict(); // 第二个加载的jQuery对象变成了 $2

    // Your code here...
    var style = document.createElement("link");
    style.href = "https://www.youyizhineng.top/query_coupon/query_coupon.css";
    style.rel = "stylesheet";
    style.type = "text/css";
    document.getElementsByTagName("head").item(0).appendChild(style);

    style = document.createElement("link");
    style.href = "https://www.youyizhineng.top/query_coupon/coupon_style.css";
    style.rel = "stylesheet";
    style.type = "text/css";
    document.getElementsByTagName("head").item(0).appendChild(style);

    var obj = {};
    var couponArea;
    var jd_item_list = '';
    var jd_data_list_back = '';
    var check_url = '';
    var options = {
        title: { // 显示折现图的title
            text: '花前省一省-商品历史价格走势图',
            fontSize: '12px'
        },
        markers: {
            size: 0,
            colors: ['#fbb5b0'],
        },
        chart: {
            height: 200,
            width: "100%",
            type: "area",
            animations: {
                initialAnimation: {
                    enabled: false
                }
            }
        },
        series: [
            {
                name: "价格",
                data: []
            }
        ],
        xaxis: {
            type: "datetime",
            labels: {
                datetimeFormatter: {
                    year: 'yyyy',
                    month: 'MM \-yy',
                    day: 'yyyy-MM-dd',
                    hour: 'HH:mm'
                }
            }
        },
        stroke: {
            curve: 'smooth',
            width: [0.5, 0.5, 0.5]
        },
        colors: ['#F44336'],
        dataLabels: {
            enabled: false,
            style: {
                colors: ['#000000']
            }
        },
        tooltip: {
            x: {
                format: 'yyyy-MM-dd'
            },
            y: [{
                formatter: function (y) {
                    if (typeof y !== "undefined") {
                        return y.toFixed(0) + "元";
                    }
                    return y;
                }
            }]
        }
    }
    var chart;
    //列表页面操作
    obj.initSearchHtml = function (selectorList) {
        setInterval(function () {
            selectorList.forEach(function (selector) {
                obj.initSearchItemSelector(selector);
            });
        }, 1000);
    };

    obj.initSearchItemSelector = function (selector) {
        $2(selector).each(function () {
            obj.initSearchItem(this);
        });
    };

    obj.initSearchItem = function (selector) {
        var $this = $2(selector);
        var nid;
        if ($this.hasClass("tb-cool-box-already")) {
            return;
        } else {
            $this.addClass("tb-cool-box-already");
        }
        if (obj.site_type() == "taobao_lst_page") {
            nid = $this.attr("data-id");
            if (!obj.isVailidItemId(nid)) {
                nid = $this.attr("data-itemid");
            }

            if (!obj.isVailidItemId(nid)) {
                if ($this.attr("href")) {
                    nid = location.protocol + $this.attr("href");
                } else {
                    var $a = $this.find("a");
                    if (!$a.length) {
                        return;
                    }

                    nid = $a.attr("data-nid");
                    if (!obj.isVailidItemId(nid)) {
                        if ($a.hasClass("j_ReceiveCoupon") && $a.length > 1) {
                            nid = location.protocol + $2($a[1]).attr("href");
                        } else {
                            nid = location.protocol + $a.attr("href");
                        }
                    }
                }
            }
        }
        else if (obj.site_type() == "jingdong_lst_page") {
            nid = $this.attr("data-sku");
            if (typeof (nid) == "undefined") {
                nid = $this.find('.price').attr("data-skuid");
            }
            if (!obj.isVailidItemId(nid)) {
                nid = $this.find(".p-operate").find("a").attr("skuid");
            }
        }
        if (obj.isValidNid(nid)) {
            obj.appenBasicQueryHtml($this, nid);
        }
    };
    //图片上显示提示图标
    obj.initSearchEvent = function () {
        $2(".tb-cool-box-area").live("click", function () {
            var Show_hide_div_id = $2(this).attr("name");
            var a = document.getElementsByName(Show_hide_div_id)[0].style.opacity;
            for (let index = 0; index < document.getElementsByName(Show_hide_div_id).length; index++) {
                if (a == "" || a == "1") {
                    document.getElementsByName(Show_hide_div_id)[index].style.opacity = "0.2";
                } else {
                    document.getElementsByName(Show_hide_div_id)[index].style.opacity = "1";
                }
            }
        });
        $2(".tb-cool-box-area-rm").live("click", function () {
            var Show_hide_div_id = $2(this).attr("name");
            var a = document.getElementsByName(Show_hide_div_id)[0].style.opacity;
            for (let index = 0; index < document.getElementsByName(Show_hide_div_id).length; index++) {
                if (a == "" || a == "1") {
                    document.getElementsByName(Show_hide_div_id)[index].style.opacity = "0.2";
                } else {
                    document.getElementsByName(Show_hide_div_id)[index].style.opacity = "1";
                }
            }
        });
    };

    obj.basicQuery = function () {
        setInterval(function () {
            $2(".tb-cool-box-wait").each(function () {
                obj.basicQueryItem(this);
            });
        }, 1000);
    };

    obj.basicQuery_jd_list = function () {
        setInterval(function () {
            if ($2(".tb-cool-box-wait").length > 0) {
                jd_item_list = jd_item_list.substr(0, jd_item_list.length - 1);
                obj.update_jd_list_data(jd_item_list);
                jd_item_list = '';
            }
            if ($2(".tb-cool-box-wait-rm").length > 0 && jd_data_list_back != '') {
                $2(".tb-cool-box-wait-rm").each(function () {
                    obj.basicQueryItem_jd(this, jd_data_list_back, 'refresh_cashback');
                });
            }
        }, 1500);



    };

    obj.update_jd_list_data = function (jd_item_list) {
        url =
            "https://www.youyizhineng.top/query_coupon/query_coupon.php?operate=quert_list_jd&itemid_list=" +
            jd_item_list;
        $2.getJSON(url, function (data) {
            $2(".tb-cool-box-wait").each(function () {
                jd_data_list_back = data;
                obj.basicQueryItem_jd(this, data, '');
            });
        });
    }


    obj.appenBasicQueryHtml = function (selector, nid) {
        if (obj.site_type() == "jingdong_lst_page") {
            jd_item_list = jd_item_list + nid + ",";
        }

        selector.append(
            '<div class="tb-cool-box-area tb-cool-box-wait"  data-nid="' +
            nid +
            '"  name="c_div_' +
            nid +
            '"><a class="tb-cool-box-info tb-cool-box-info-default" title="点击查询">查询中...</a></div>'
        );
        selector.append(
            '<div class="tb-cool-box-area-rm tb-cool-box-wait-rm"  data-nid="' +
            nid +
            '"  name="r_div_' +
            nid +
            '"><a class="tb-cool-box-info tb-cool-box-info-default" title="点击查询">查询中...</a></div>'
        );
    };

    obj.basicQueryItem = function (selector) {
        var $this = $2(selector);
        var url;
        $this.removeClass("tb-cool-box-wait");

        var nid = $this.attr("data-nid");
        url =
            "https://www.youyizhineng.top/query_coupon/query_coupon.php?operate=quert_single&itemid=" +
            nid;

        var xhr1 = new XMLHttpRequest();//第一步:新建对象
        xhr1.open('GET', url, true);//第二步:打开连接  将请求参数写在url中
        xhr1.send();//第三步:发送请求  将请求参数写在URL中
        /**
         * 获取数据后的处理程序
         */
        xhr1.onreadystatechange = function () {
            if (xhr1.readyState == 4 && xhr1.status == 200) {
                var res = xhr1.responseText;//获取到json字符串,解析
                var data = JSON.parse(res);

                if (data.couponmoney != 0 || data.return_money_rate != 0) {
                    obj.showBasicQueryFind($this, data.couponmoney, data.return_money_rate, data.url2);
                } else {
                    obj.showBasicQueryEmpty($this);
                }
            }
        }
    };
    obj.basicQueryItem_jd = function (selector, data, flag) {
        if (flag == 'refresh_cashback') {
            var $this = $2(selector).prev();
        } else {
            var $this = $2(selector);
        }
        var url;
        var each_couponmoney;
        var each_return_money_rate;
        var each_url2;
        $this.removeClass("tb-cool-box-wait");

        var nid = $this.attr("data-nid");
        if (typeof (data[nid]) == "undefined") {
            each_couponmoney = 0;
            each_return_money_rate = 0;
            each_url2 = '';
        }
        else {
            each_couponmoney = data[nid].couponmoney;
            each_return_money_rate = data[nid].return_money_rate;
            each_url2 = data.url2;
        }

        if (each_couponmoney != 0 || each_return_money_rate != 0) {
            obj.showBasicQueryFind($this, each_couponmoney, each_return_money_rate, each_url2)
        } else {
            obj.showBasicQueryEmpty($this);
        }
    };

    obj.showBasicQueryFind = function (selector, couponMoney, rm_Money, url2) {
        var price;
        if (couponMoney == "0") {
            selector.html(
                '<a target="_blank" class="tb-cool-box-info tb-cool-box-info-find" title="显示/隐藏">无券</a>'
            );
        } else
            selector.html(
                '<a target="_blank" class="tb-cool-box-info tb-cool-box-info-find" title="显示/隐藏">有券(减' +
                couponMoney +
                "元)</a>"
            );

        var url = location.href;
        if (url.indexOf("//s.taobao.com/search") > 0 || url.indexOf("//s.taobao.com/list") > 0) {
            price = selector.prev().find("strong").html();
            if (url2 != '') {
                selector.prev().find(".J_ClickStat").attr("href", url2);
                selector.prev().prev().find(".pic").find("a").attr("href", url2);
            }
        }
        else if (url.indexOf("//list.tmall.com/search_product.htm") > 0) {
            price = selector.prev().find("em").attr('title');
            if (price > 0) {
                price = selector.prev().find("em").attr('title');
                if (url2 != '') {
                    selector.prev().find(".productTitle").find("a").attr("href", url2);
                    selector.prev().find(".productImg").attr("href", url2);
                }
            }
            else {
                price = selector.prev().find(".item-price").find("strong").html();
            }
        }
        else if (url.indexOf("//list.tmall.hk/search_product.htm") > 0) {
            price = selector.prev().find("em").attr('title');
            if (url2 != '') {
                selector.prev().find(".productTitle").find("a").attr("href", url2);
                selector.prev().find(".productImg").attr("href", url2);
            }
        }
        else if (url.indexOf("//maiyao.liangxinyao.com/shop/view_shop.htm") > 0) {
            price = selector.prev().prev().find(".c-price").html();
            if (price > 0) {
                price = selector.prev().prev().find(".c-price").html();
                if (url2 != '') {
                    selector.prev().prev().find("a").attr("href", url2);
                    selector.prev().prev().prev().find("a").attr("href", url2);
                }
            }
            else {
                price = selector.prev().find(".c-price").html();
                if (url2 != '') {
                    selector.prev().find("a").attr("href", url2);
                    selector.prev().prev().find("a").attr("href", url2);
                }
            }
        }
        else if (url.indexOf("//search.jd.com/Search") > 0 || url.indexOf("//list.jd.com/list.html") > 0) {
            price = selector.prev().find(".p-price").find("i").html();
            if (price > 0) {
                price = selector.prev().find(".p-price").find("i").html();
            }
        }
        else if (url.toLowerCase().indexOf("//search.jd.hk/search".toLowerCase()) > 0) {
            price = selector.prev().find(".price").find("span").html().split('>')[2];
        }
        else if (url.toLowerCase().indexOf("//www.jd.com/xinkuan".toLowerCase()) > 0) {
            price = selector.prev().find(".price").find("strong").html().split('¥')[1];
            if (price == "暂无报价") {
                return;
            }
        }

        var rm_Money_clc = Math.round(Math.floor((price - couponMoney) * rm_Money * 1000) / 10) / 100;
        if (rm_Money_clc != 0) {
            selector.next().html(
                '<a target="_blank" class="tb-cool-box-info tb-cool-box-info-find-rm" title="使用APP「花前省一省」扫码宝贝详情页二维码可得返现">返现(约' +
                rm_Money_clc +
                "元)</a>"
            );
        }
        else {
            selector.next().html(
                '<a target="_blank" class="tb-cool-box-info tb-cool-box-info-find" title="显示/隐藏">无返现</a>'
            );
        }
    };

    obj.showBasicQueryEmpty = function (selector) {
        // selector.addClass("tb-cool-box-info-translucent");
        selector.html(
            '<a href="javascript:void(0);" class="tb-cool-box-info tb-cool-box-info-empty" style="opacity:0.5;" title="切换透明度">暂无优惠</a>'
        );
        selector
            .next()
            .html(
                '<a href="javascript:void(0);" class="tb-cool-box-info tb-cool-box-info-empty" style="opacity:0.5;" title="切换透明度">暂无返现</a>'
            );
    };

    obj.site_type = function () {
        url = location.href;

        if (
            url.indexOf("//item.taobao.com/item.htm") > 0 ||
            url.indexOf("//detail.tmall.com/item.htm") > 0 ||
            url.indexOf("//chaoshi.detail.tmall.com/item.htm") > 0 ||
            url.indexOf("//detail.tmall.hk/hk/item.htm") > 0 ||
            url.indexOf("//detail.liangxinyao.com/item.htm") > 0 ||
            url.indexOf("//detail.tmall.hk/item.htm") > 0
        ) {
            return "taobao_details_page";
        } else if (
            url.indexOf("//maiyao.liangxinyao.com/shop/view_shop.htm") > 0 ||
            url.indexOf("//list.tmall.com/search_product.htm") > 0 ||
            url.indexOf("//s.taobao.com/search") > 0 ||
            url.indexOf("//list.tmall.hk/search_product.htm") > 0
        ) {
            return "taobao_lst_page";
        }
        else if (
            url.indexOf("//search.jd.com/Search") > 0 ||
            url.indexOf("//search.jd.hk/search") > 0 ||
            url.indexOf("//www.jd.com/xinkuan") > 0 ||
            url.indexOf("//list.jd.com/list.html") > 0 ||
            url.indexOf("//search.jd.hk/Search") > 0
        ) {
            return "jingdong_lst_page";
        }
        else if (
            url.indexOf("//item.jd.hk") > 0 ||
            url.indexOf("//item.jd.com") > 0
        ) {
            return "jingdong_details_page";
        }


    }
    obj.isDetailPageTaoBao = function (url) {
        if (
            url.indexOf("//item.taobao.com/item.htm") > 0 ||
            url.indexOf("//detail.tmall.com/item.htm") > 0 ||
            url.indexOf("//chaoshi.detail.tmall.com/item.htm") > 0 ||
            url.indexOf("//detail.tmall.hk/hk/item.htm") > 0
        ) {
            return true;
        } else {
            return false;
        }
    };

    obj.DetailPageTB_or_TM_or_JD = function () {
        var url = location.href;
        if (url.indexOf("//item.taobao.com/item.htm") > 0 || url.indexOf("//detail.liangxinyao.com/item.htm")) {
            return 1;
        }
        else if (url.indexOf("//detail.tmall.com/item.htm") > 0) {
            return 2;
        }
        else if (url.indexOf("//item.jd.com") > 0) {
            return 3;
        }
    };


    obj.isVailidItemId = function (itemId) {
        if (!itemId) {
            return false;
        }

        var itemIdInt = parseInt(itemId);
        if (itemIdInt == itemId && itemId > 10000) {
            return true;
        } else {
            return false;
        }
    };

    obj.isValidNid = function (nid) {
        if (!nid) {
            return false;
        } else if (nid.indexOf("http") >= 0) {
            if (
                obj.isDetailPageTaoBao(nid) ||
                nid.indexOf("//detail.ju.taobao.com/home.htm") > 0
            ) {
                return true;
            } else {
                return false;
            }
        } else {
            return true;
        }
    };

    obj.getprice = function (selector) {
        if (!nid) {
            return false;
        } else if (nid.indexOf("http") >= 0) {
            if (
                obj.isDetailPageTaoBao(nid) ||
                nid.indexOf("//detail.ju.taobao.com/home.htm") > 0
            ) {
                return true;
            } else {
                return false;
            }
        } else {
            return true;
        }
    };

    obj.send_get_req = function (url) {
        var xhr = new XMLHttpRequest();//第一步:新建对象
        xhr.open('GET', url, true);//第二步:打开连接  将请求参数写在url中
        xhr.send();//第三步:发送请求  将请求参数写在URL中
        /**
         * 获取数据后的处理程序
         */
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && xhr.status == 200) {
                var res = xhr.responseText;//获取到json字符串,解析
            }
        };
    };
    obj.get_tb_price = function (price_str) {
        var price = '';
        if (price_str != null) {
            if (price_str.indexOf("-") > 0) {
                price = price_str.split("-")[0];
            }
            else {
                price = price_str;
            }
        }
        return price;
    };
    obj.generate_trend_data = function (all_begin_time, all_line) {

        if (all_line.length > 0) {
            for (let index = 0; index < all_line.length; index++) {
                var data_tmp = {};
                var newTime = new Date(all_begin_time);
                newTime = newTime.setDate(newTime.getDate() + index);
                newTime = new Date(newTime);

                var newTime_d = (newTime.getMonth() + 1).toString().padStart(2, '0') + "-" + newTime.getDate().toString().padStart(2, '0') + "-" + newTime.getFullYear() + " GMT";
                data_tmp["x"] = newTime_d;
                data_tmp["y"] = all_line[index];
                options.series[0].data.push(data_tmp);
            }
        }
    };
    obj.query_trend_data = function () {
        //获得价格波动var url = location.href;
        var gwdUrl = "https://browser.gwdang.com/extension/price_towards?url=" + encodeURIComponent(url)
        GM_xmlhttpRequest({
            url: gwdUrl,
            method: 'GET',
            timeout: 10000,
            headers: {
                'Content-Type': 'application/json',
                'Accept': 'application/json',
                'Cache-Control': 'public'
            },
            onload: function (res) {
                //loadingMask.parentNode.removeChild(mask);
                const json = JSON.parse(res.responseText);
                const data = json;
                if (data.is_ban == null) {
                    var all_line;
                    var all_begin_time;
                    if ($2("#float_div").css("display") == "block") {
                        location.reload();
                    }
                    if (data.store[0].all_line != null) {
                        all_begin_time = data.store[0].all_line_begin_time;
                        all_line = data.store[0].all_line;
                        obj.generate_trend_data(all_begin_time, all_line);
                    }
                } else {
                    options.title.text = "本次需要验证:【点击上方?按钮进行验证】";
                    check_url = data.action.to;
                    // console.log(check_url);
                }
            }
        });
    }
    obj.add_iframe = function () {
        if (options.series[0].data.length > 0) {
            $2(".image-status").attr("title", "历史数据加载成功");
            $2(".image-status").attr("src", "http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/backend/202009/0_f627919f2c80d11eff1b42baceecd3bb.png");
        }
        else {
            //在chart上提示显示文字
            $2(".trend-div").append('<span class="cover-chart-span">21321321321</span>');

            $2(".image-status").attr("title", "需要验证");
            $2(".image-status").attr("src", "http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/backend/202009/0_5e1a05eda68afc06e382b0dc20b818ba.png");
            $2(".image-status").css("cursor", "pointer");

            $2(".status-span").html("←本次需要验证,点击左侧图标~");
            $2("body").append('<div id="float_div" class="frame_div"></div>');
            document.getElementById("float_div").style.left = (window.screen.width - 800) / 2 + "px";
            document.getElementById("float_div").style.top = (window.screen.height - 500) / 2 + "px";
            $2("#float_div").append('<iframe id="iframe_check" src="" ></iframe>');
            $2("#iframe_check").attr("src", check_url);
            $2("#iframe_check").attr("scrolling", "no");
            $2("#float_div").append('<div class="cover">验证后将自动刷新</div>');
            $2(".image-status").click(function (event) {
                $2("#float_div").css("display", "none");
                if ($2("#float_div").css("display") == "block") {
                    $2("#float_div").css("display", "none");
                } else {
                    $2("#float_div").css("display", "block");
                    var w_check = setInterval(function () {
                        obj.query_trend_data();
                        if (options.series[0].data.length > 0) {
                            $2("#float_div").css("display", "none");
                            chart = new ApexCharts(document.querySelector("#chart"), options);
                            chart.render();
                            clearInterval(w_check);
                        }
                    }, 1000);
                }
            });
            //关闭按钮
            $2("#float_div").append('<img class="cover-close" src="http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/backend/202009/0_fd8e020a3ffe83f1041cf64330ade743.png" ></img>');
            $2(".cover-close").click(function (event) {
                $2("#float_div").css("display", "none");
            });
        }


    }
    if (obj.site_type() == "taobao_details_page") {
        var params = location.search.split("?")[1].split("&");
        for (var index in params) {
            if (params[index].split("=")[0] == "id") {
                var productId = params[index].split("=")[1];
                break;
            }
        }
        obj.query_trend_data();
        var url =
            "https://www.youyizhineng.top/query_coupon/query_coupon.php?operate=quert_single&itemid=" +
            productId;

        var xhr = new XMLHttpRequest();//第一步:新建对象
        xhr.open('GET', url, true);//第二步:打开连接  将请求参数写在url中
        xhr.send();//第三步:发送请求  将请求参数写在URL中
        /**
         * 获取数据后的处理程序
         */
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && xhr.status == 200) {
                var res = xhr.responseText;//获取到json字符串,解析
                var data = JSON.parse(res);
                var couponArea;
                if (data.couponmoney == 0) {
                    couponArea =
                        '<div class="coupon-wrap"><div class="stamp stamp04">' +
                        '<div class="par"><sub class="sign">¥</sub><span style="font-size:20px">暂无优惠券</span><p></p></div>' +
                        "<i></i></div></div>";
                } else {
                    couponArea =
                        '<div class="coupon-wrap"><div class="stamp stamp04">' +
                        '<div class="par"><sub class="sign">¥</sub><span>' +
                        data.couponmoney +
                        "</span><p>" +
                        data.couponexplain +
                        "</p></div>" +
                        '<div class="copy">优惠券<p>' +
                        data.couponstarttime +
                        "<br>" +
                        data.couponendtime +
                        '</p><a href="' +
                        data.url1 +
                        '">直接领券</a></div>' +
                        "<i></i></div></div>";
                }

                if (data.return_money_rate == 0) {
                    couponArea =
                        couponArea +
                        '<div class="coupon-wrap-rm"><div class="rm-div">' +
                        '<span>暂无返现</span>' +
                        '<div class="rm-btn" id="a_click">其他功能</div>' +
                        '</div></div>' +
                        '<div class="coupon-wrap-rm"><div class="rm-div">' +
                        '<div class="trend-btn" id="trend_click">历史价格走势<img class="trend-btn-img" src="http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/backend/202009/0_77b4324cbeed360a09c5c91a1c71ae86.png" alt=""></div>' +
                        '<img class="image-status">' +
                        '<em class="status-span"></em>' +
                        '</div></div>' +
                        '<div id="coupon-wrap-qr" class="coupon-wrap-qr"><div class="qr-code-div">' +
                        '<img class="qr-img" src="http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/avatar_code/202005/2_828a21c75f17ff6f3bac516761b0e8da.png"></img>' +
                        '<span class="title">「花前省一省」是一款领券返现的APP,支持淘宝、天猫、京东、拼多多、唯品会等等主流平台~还有点外卖领券返现,电影票优惠购,全网vip视频免费看等功能,让您花钱之前,再省一省</span>' +
                        '<span class="foot" style="height:20px">扫码下载,支持IOS和安卓,也可在各大应用市场下载</span>' +
                        '</div></div>' +
                        '<div id="coupon-wrap-trend" class="coupon-wrap-price"><div class="trend-div">' +
                        '<div id="chart"></div>' +
                        '</div></div>';
                } else {
                    couponArea =
                        couponArea +
                        '<div class="coupon-wrap-rm"><div class="rm-div" style="width:600px">' +
                        '<span id="rm_money">返现查询中...</span>' +
                        '<div class="rm-btn" id="a_click">点击领取返现</div>' +
                        '</div></div>' +
                        '<div class="coupon-wrap-rm"><div class="rm-div">' +
                        '<div class="trend-btn" id="trend_click">历史价格走势<img class="trend-btn-img" src="http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/backend/202009/0_77b4324cbeed360a09c5c91a1c71ae86.png" alt=""></div>' +
                        '<img  class="image-status" >' +
                        '<em class="status-span"></em>' +
                        '</div></div>' +
                        '<div id="coupon-wrap-qr" class="coupon-wrap-qr"><div class="qr-code-div">' +
                        '<div id="qrcode"></div><span class="title">获得返现只需三步~</br></br>①应用商店下载APP:花前省一省</br>②使用APP主页扫一扫功能扫左侧生成的商品码</br>③在APP上领券下单,确认收货后返现将进入app账户余额~</br><br>花前省一省--花钱之前,再省一省</span>' +
                        '<span class="foot" style="height:20px">支持IOS和安卓,各大应用市场均有下载</span>' +
                        '</div></div>' +
                        '<div id="coupon-wrap-trend" class="coupon-wrap-price"><div class="trend-div">' +
                        '<div id="chart"></div>' +
                        '</div></div>';
                }

                var si = setInterval(function () {
                    if ($2(".coupon-wrap").length == 0) {
                        if ($2(".tm-fcs-panel").length > 0) {
                            $2(".tm-fcs-panel").after(couponArea);
                        } else if ($2("ul.tb-meta").length > 0) {
                            $2("ul.tb-meta").after(couponArea);
                        }
                        obj.add_iframe();
                        var qr_code_text = obj.DetailPageTB_or_TM_or_JD() + '//' + productId;
                        $2("#qrcode").qrcode({ width: 150, height: 150, text: qr_code_text });
                        $2("#a_click").click(function (event) {
                            $2("#coupon-wrap-trend").css("display", "none");
                            if ($2("#coupon-wrap-qr").css("display") == "block") {
                                $2("#coupon-wrap-qr").css("display", "none");
                            } else {
                                $2("#coupon-wrap-qr").css("display", "block");
                            }
                        });

                        chart = new ApexCharts(document.querySelector("#chart"), options);
                        chart.render();

                        $2("#trend_click").click(function (event) {
                            $2("#coupon-wrap-qr").css("display", "none");
                            if ($2("#coupon-wrap-trend").css("display") == "block") {
                                $2("#coupon-wrap-trend").css("display", "none");
                            } else {
                                $2("#coupon-wrap-trend").css("display", "block");
                            }
                        });
                    }

                    if (data.return_money_rate != 0) {
                        var price_str = '';
                        if ($2(".tm-price-panel").find(".tm-price").length > 0) {
                            var price_str = $2(".tm-price-panel").find(".tm-price").html();
                        } else if ($2("#J_StrPrice").find(".tb-rmb-num").length > 0) {
                            var price_str = $2("#J_StrPrice").find(".tb-rmb-num").html();
                        }
                        var price = obj.get_tb_price(price_str);

                        var price_prompt_str = '';
                        if ($2(".tm-promo-price").find(".tm-price").length > 0) {
                            price_prompt_str = $2(".tm-promo-price").find(".tm-price").html();
                        } else if ($2("#J_PromoPriceNum").length > 0) {
                            price_prompt_str = $2("#J_PromoPriceNum").html();
                        }
                        var price_prompt = obj.get_tb_price(price_prompt_str);
                        if (price != null) {
                            if (price_prompt != null && price_prompt != '') {
                                var rm = Math.round(Math.floor((price_prompt - data.couponmoney) * data.return_money_rate * 1000) / 10) / 100;
                            }
                            else {
                                rm = Math.round(Math.floor((price - data.couponmoney) * data.return_money_rate * 1000) / 10) / 100;
                            }

                            if (rm > 0) {
                                var str = '返现约为:' + rm + '元'
                                $2("#rm_money").html(str);
                            }
                        }


                    }
                }, 500);

            }
        };
    } else if (obj.site_type() == "taobao_lst_page") {
        if (document.title.indexOf("天猫超市") > 0) {
            // return;
        }
        var selectorList = [];
        url = location.href;
        if (
            url.indexOf("//s.taobao.com/search") > 0 ||
            url.indexOf("//s.taobao.com/list") > 0
        ) {
            selectorList.push(".items .item");
        } else if (url.indexOf("//list.tmall.com/search_product.htm") > 0) {
            selectorList.push(".product");
            selectorList.push(".chaoshi-recommend-list .chaoshi-recommend-item");
        } else if (url.indexOf("//list.tmall.hk/search_product.htm") > 0) {
            selectorList.push("#J_ItemList .product");
        } else if (url.indexOf("//maiyao.liangxinyao.com/shop/view_shop") > 0) {
            selectorList.push("#J_ShopSearchResult .item");
        }
        if (selectorList && selectorList.length > 0) {

            obj.initSearchHtml(selectorList);
            obj.initSearchEvent();
            obj.basicQuery();
        }
    } else if (obj.site_type() == "jingdong_details_page") {
        var price = 0;
        var rm = 0;
        var str = 0;
        var productId = location.href.split("//")[1].split("/")[1].split(".")[0];
        var url =
            "https://www.youyizhineng.top/query_coupon/query_coupon.php?operate=quert_single_jd&itemid=" +
            productId;

        var xhr = new XMLHttpRequest();//第一步:新建对象
        xhr.open('GET', url, true);//第二步:打开连接  将请求参数写在url中
        xhr.send();//第三步:发送请求  将请求参数写在URL中
        /**
         * 获取数据后的处理程序
         */
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && xhr.status == 200) {
                var res = xhr.responseText;//获取到json字符串,解析
                var data_tmp = JSON.parse(res);
                var data = data_tmp[productId];
                var data_detail = data_tmp[productId];
                if (data.couponmoney == 0) {
                    couponArea =
                        '<div class="coupon-wrap"><div class="stamp stamp04">' +
                        '<div class="par"><sub class="sign">¥</sub><span style="font-size:20px">暂无隐藏优惠券</span><p></p></div>' +
                        "<i></i></div></div>";
                } else {
                    couponArea =
                        '<div class="coupon-wrap"><div class="stamp stamp04">' +
                        '<div class="par"><sub class="sign">¥</sub><span>' +
                        data.couponmoney +
                        "</span><p>" +
                        data.couponexplain +
                        "</p></div>" +
                        '<div class="copy">优惠券<p>' +
                        data.couponstarttime +
                        "<br>" +
                        data.couponendtime +
                        '</p><a href="' +
                        data.url1 +
                        '">直接领券</a></div>' +
                        "<i></i></div></div>";
                }

                if (data.return_money_rate == 0) {
                    couponArea =
                        couponArea +
                        '<div class="coupon-wrap-rm"><div class="rm-div"><span>暂无返现</span><div class="rm-btn" id="a_click">其他功能</div></div></div>' +
                        '<div id="coupon-wrap-qr" class="coupon-wrap-qr"><div class="qr-code-div"><img class="qr-img" src="http://huaqianshengyisheng.img.weiyuntop.com/oss/uploads/avatar_code/202005/2_828a21c75f17ff6f3bac516761b0e8da.png"></img>' +
                        '<span class="title">「花前省一省」是一款领券返现的APP,支持淘宝、天猫、京东、拼多多、唯品会等等主流平台~还有点外卖领券返现,电影票优惠购,全网vip视频免费看等功能,让您花钱之前,再省一省</span>' +
                        '<span class="foot" style="height:20px">扫码下载,支持IOS和安卓,也可在各大应用市场下载</span></div></div>';
                } else {
                    couponArea =
                        couponArea +
                        '<div class="coupon-wrap-rm"><div class="rm-div"><span id="rm_money">返现查询中...</span><div class="rm-btn" id="a_click">点击领取返现</div></div></div>' +
                        '<div id="coupon-wrap-qr" class="coupon-wrap-qr"><div class="qr-code-div"><div id="qrcode"></div><span class="title">获得返现只需三步~</br></br>①应用商店下载APP:花前省一省</br>②使用APP主页扫一扫功能扫左侧生成的商品码</br>③在APP上领券下单,确认收货后返现将进入app账户余额~</br><br>花前省一省--花钱之前,再省一省</span>' +
                        '<span class="foot" style="height:20px">支持IOS和安卓,各大应用市场均有下载</span></div></div>';
                }
                var ls = setInterval(function () {
                    if ($2(".coupon-wrap").length == 0) {
                        if (location.href.indexOf('//item.jd.com') > 0) {
                            if ($2(".summary-first").length > 0) {
                                $2(".summary-first").after(couponArea);
                            }
                            else if ($2("#summary").length > 0) {
                                $2("#summary").after(couponArea);
                            }
                        }
                        else if (location.href.indexOf('//item.jd.hk') > 0) {
                            if ($2(".summary-first").length > 0) {
                                $2(".summary-first").after(couponArea);
                            }
                            else if ($2("#summary").length > 0) {
                                $2("#summary").after(couponArea);

                            }
                            else if ($2("#summary-wrap").length > 0) {
                                $2("#summary-wrap").after(couponArea);

                            }
                            else if ($2(".summary").length > 0) {
                                $2(".summary").after(couponArea);

                            }
                        } else {
                            $2("ul.tb-meta").after(couponArea);
                        }
                    }
                    else {
                        var qr_code_text = obj.DetailPageTB_or_TM_or_JD() + '//' + productId;
                        $2("#qrcode").qrcode({ width: 150, height: 150, text: qr_code_text });
                        $2("#a_click").click(function (event) {
                            if ($2("#coupon-wrap-qr").css("display") == "block") {
                                $2("#coupon-wrap-qr").css("display", "none");
                            } else {
                                $2("#coupon-wrap-qr").css("display", "block");
                            }
                        });
                        clearInterval(ls);
                        return;
                    }
                });

                setInterval(function () {
                    if (location.href.indexOf('//item.jd.com')) {
                        if ($2(".p-price").find("span").eq(1).length > 0) {
                            price = $2(".p-price").find("span").eq(1).html();
                            if (price > 0 && price != "¥") {
                                rm = Math.round(Math.floor((price - data_detail.couponmoney) * data_detail.return_money_rate * 1000) / 10) / 100;
                            }
                        }
                        else if ($2("#summary-price").find("#jd-price").length > 0) {
                            price = $2("#summary-price").find("#jd-price").html().split("</span>")[1];
                            rm = Math.round(Math.floor((price - data_detail.couponmoney) * data_detail.return_money_rate * 1000) / 10) / 100;
                        }
                        if (price > 0) {
                            str = '返现约为:' + rm + '元'
                            $2("#rm_money").html(str);
                        }
                    } else {
                        price = $2(".p-price").find("span").eq(1).html();
                        if (price > 0) {
                            rm = Math.round(Math.floor((price - data_detail.couponmoney) * data_detail.return_money_rate * 1000) / 10) / 100;
                        }
                        str = '返现约为:' + rm + '元'
                        $2("#rm_money").html(str);
                    }
                }, 500);

            }
        };
    } else if (obj.site_type() == "jingdong_lst_page") {
        var selectorList_jd = [];
        selectorList_jd.push(".gl-item");
        selectorList_jd.push(".sku-detail");
        obj.initSearchHtml(selectorList_jd);
        obj.initSearchEvent();
        obj.basicQuery_jd_list();
    }

})();