Spotify Silent Ads

Mute audio when Spotify ads are detected

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==UserScript==
// @name         Spotify Silent Ads
// @name:zh-CN   Spotify 静音广告
// @namespace    https://greasyfork.org/users/166541
// @version      0.0.3
// @description  Mute audio when Spotify ads are detected
// @description:zh-cn 当检测到 Spotify 广告时,对音频静音
// @author       xmdhs
// @match        https://open.spotify.com/*
// @license      MIT
// @icon         https://www.google.com/s2/favicons?sz=64&domain=open.spotify.com
// ==/UserScript==
 
let muted = false;

const observer = new MutationObserver(() => {
    if (document.title.includes("Spotify – 广告") || muted) {
        document.querySelector('[data-testid="volume-bar-toggle-mute-button"]').click();
        muted = !muted
        if (muted) {
            console.log(document.title, "静音")
        }
    }
});

observer.observe(document.querySelector('title'), { childList: true });