Flaschenpost.de Bestpreis Sortierer

Sortiert Angeboote auf flaschenpost.de nach Bestpreis pro Liter.

当前为 2021-10-08 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name            Flaschenpost.de Bestpreis Sortierer
// @description     Sortiert Angeboote auf flaschenpost.de nach Bestpreis pro Liter.
// @namespace       https://www.flaschenpost.de
// @version         0.10
// @license         MIT
// @match           https://www.flaschenpost.de/*
// @require         https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js
// ==/UserScript==

$(function() {
    const list = $('.products_list_vue_container');
    const listElements = $('.products_list_vue_container > .fp_product');

    $(listElements).sort(function(a, b) {
        function extract_price(e) {
            const priceElements = $(e).find('.fp_article_pricePerUnit_deposit');
            const prices = $.map(priceElements, function (e) {
                const htmlText = $(e).text();
                const regExMatch = htmlText.match(/\(([0-9\,]+) €\/Liter\)/);
                // console.log(regExMatch);
                return Number.parseFloat(regExMatch[1].replace(',', '.'));
            });

            // console.log(prices);
            return Math.min(...prices);
        }

        return extract_price(a) - extract_price(b);
    }).appendTo(list);
});