Multibye

Say bye to scammy multi-item listings on eBay

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Multibye
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Say bye to scammy multi-item listings on eBay
// @author       asameshimae
// @match        https://www.ebay.co.uk/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=ebay.co.uk
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    let checkInterval = 500 // ms
    let hiddenClass = 'hidden' // class to add to items once hidden
    let parentSelector = 'li.s-item' // selector for the parent element to hide
    let childSelector = 'span.DEFAULT' // selector for the child element to text search
    let textMatch = ' to ' // exact text content of selectors whose parent should be hidden

    let checkAndHide = ()=>{
        document.querySelectorAll(`${parentSelector}:not(.${hiddenClass}) ${childSelector}`).forEach(
            e=>{
                if(e.textContent===textMatch) {
                let target = e.closest(parentSelector);
                target.style.display='none';
                target.classList.add(hiddenClass)
                }
            }
        )
    }

    let i = setInterval(checkAndHide, checkInterval)
})();