4 votes

Comment puis-je faire en sorte qu'une favicon reste statique?

Je voudrais empêcher le favicon de changer sur Firefox sur mon Mac.

Je pense que je pourrais le faire avec Grease Monkey.

Mon objectif est d'empêcher des choses comme Slack de changer le favicon pour indiquer qu'il y a une notification.

Puis-je dire aux sites web qu'ils doivent utiliser le même favicon qu'ils ont chargé sans le modifier ?

4voto

Donald Duck Points 2375

Vous pouvez écrire un script Greasemonkey qui utilise un observateur de mutations Javascript mutation observer pour observer quand le favicon change, puis le changer immédiatement avant que vous ne remarquiez quoi que ce soit.

Voici comment faire :

  1. Si ce n'est pas déjà fait, installez l'extension Firefox Greasemonkey (cette question concerne Firefox, mais vous pouvez également le faire sur Chrome et Edge en utilisant l'extension Tampermonkey : lien pour Chrome, lien pour Edge)

  2. Cliquez sur le menu Greasemonkey dans la barre supérieure, puis sélectionnez "Nouveau script utilisateur..." (si vous utilisez Tampermonkey, le bouton s'appelle "Créer un nouveau script...")

  3. Lorsque vous avez cliqué sur ce bouton, cela devrait ouvrir un nouvel onglet avec une grande zone de texte où vous pouvez écrire du code Javascript. La zone de texte contiendra probablement déjà du code. Supprimez simplement ce code et remplacez-le par ceci :

    // ==UserScript==
    // @name         Ne pas changer le favicon
    // @namespace    http://tampermonkey.net/
    // @version      0.1
    // @description  Empêche les sites de changer le favicon
    // @author       Vous
    // @match        http://*/*
    // @match        https://*/*
    // @grant        none
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        //Initialisation de quelques variables
        var favicon = document.querySelector("link[rel='shortcut icon']");
        const initialIcon = favicon.href;
    
        //Définir la fonction à exécuter lorsque le favicon change
        var observer = new MutationObserver(function(){
            if(favicon.href != initialIcon){
                favicon.href = initialIcon;    //Changer le favicon directement s'il change avant que vous ne remarquiez quoi que ce soit
            }
        });
    
        //Exécuter la fonction ci-dessus chaque fois que le favicon change
        observer.observe(favicon, {attributes: true});
    })();

    Les lignes en haut qui commencent par // définissent les propriétés du script. @name définit le nom du script et @match définit sur quels sites le script doit être exécuté (http://*/* et https://*/* signifient tous les sites).

    La partie en bas est le script réel qui empêche le changement de favicon. Comme je l'ai expliqué au début de ma réponse, ce qu'il fait c'est détecter quand le favicon change et le changer rapidement en arrière avant que vous ne remarquiez quoi que ce soit.

  4. Appuyez sur Ctrl+S pour enregistrer le script, et vous devriez avoir terminé.

0voto

mxrclxst Points 95

Vous devriez modifier le cookie lié au site/application web et changer la valeur qui permet les notifications. Il existe des extensions comme CookieCutter qui vous permettent de modifier les cookies, bien que celle-ci soit spécifique à Safari.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X