← Tutti gli articoli

Tutorial

Elimina i popup di newsletter e iscrizione prima che appaiano

Sei al terzo paragrafo di un articolo quando una finestra scivola sullo schermo implorando il tuo indirizzo email. I popup delle newsletter sono l'interruzione più prevedibile del web — e la più facile da rimuovere per sempre.

Come funzionano i popup di iscrizione

La maggior parte dei popup si attiva in uno di tre modi: dopo un ritardo, dopo che hai scrollato una certa distanza, oppure all'"exit intent" quando il cursore corre verso la barra delle schede. Qualunque sia l'innesco, il risultato è lo stesso elemento DOM — un contenitore modale più uno sfondo scuro. Nascondili entrambi e l'interruzione sparisce.

Ricetta 1: nascondi i contenitori modali comuni

I widget dei popup riutilizzano un piccolo insieme di nomi di classe. Questa regola copre i principali e lo sfondo in un colpo solo.

/* Pulizia delle modali di newsletter / iscrizione */
[class*="newsletter"], [class*="signup-modal"],
[class*="email-capture"], [class*="subscribe-popup"],
[id*="popup"], [class*="popup-overlay"],
.modal[role="dialog"] {
  display: none !important;
  visibility: hidden !important;
}

/* Riabilita la pagina dietro la modale */
body {
  overflow: auto !important;
  padding-right: 0 !important;
}

Quel padding-right: 0 è importante: molti script delle modali aggiungono padding a destra al body per compensare una barra di scorrimento nascosta, lasciando un brutto spazio una volta sparita la modale.

Ricetta 2: sconfiggi gli overlay exit-intent

I popup exit-intent ascoltano l'uscita del mouse dal viewport. Vivono quasi sempre in un contenitore fisso a tutto schermo con uno z-index molto alto. Puoi mirare a quella firma.

/* Qualsiasi cosa fissa e a schermo intero sopra la pagina */
div[style*="position: fixed"][style*="z-index"] {
  display: none !important;
}

/* Nomi di classe comuni per exit-intent */
[class*="exit-intent"], [class*="exit-popup"],
[data-popup-trigger="exit"] {
  display: none !important;
}

Usa il primo selettore con cautela: alcuni siti mettono interfacce legittime in contenitori fissi. Se una pagina si rompe, restringi la regola solo a quel dominio.

Ricetta 3: una regola JS che blocca i popup alla fonte

Il CSS nasconde i popup dopo che vengono renderizzati. Il JavaScript può impedirne del tutto il rendering neutralizzando i timer e gli ascoltatori di scroll che li attivano.

// Disattiva i popup temporizzati bloccando i timeout lunghi
const realTimeout = window.setTimeout;
window.setTimeout = function (fn, delay, ...rest) {
  if (delay > 1500) return 0;          // salta i ritardi sospettosamente lunghi
  return realTimeout(fn, delay, ...rest);
};

// Rimuovi le modali che passano comunque
new MutationObserver(() => {
  document.querySelectorAll('[class*="modal"], [class*="popup"]')
    .forEach(el => {
      if (el.offsetHeight > 100 && el.offsetHeight < 700) {
        el.remove();
      }
    });
}).observe(document.documentElement, { childList: true, subtree: true });

Bloccare i timeout più lunghi di 1,5 secondi elimina la maggior parte dei popup ritardati lasciando intatte le normali animazioni della pagina. Regola la soglia se un sito si affida a timer lenti.

Ricetta 4: impedisci alla pagina di bloccarsi

Anche con il popup nascosto, alcuni script congelano lo scorrimento aggiungendo una classe all'elemento <html>. Eliminala e ripristina il movimento.

// Sblocca forzatamente lo scorrimento
const html = document.documentElement;
['no-scroll', 'modal-open', 'overflow-hidden', 'fixed'].forEach(c => {
  html.classList.remove(c);
  document.body.classList.remove(c);
});
document.body.style.overflow = 'auto';

Imposta una volta, naviga ovunque

Applica le ricette CSS con un pattern URL ampio come *://*/* e tieni la regola JS per i pochi siti che hanno bisogno di forza extra. Poiché JustZix esegue le tue regole prima che la pagina finisca il rendering, i popup ben costruiti non lampeggiano nemmeno sullo schermo.

Prossimi passi

Installa dalla pagina scarica JustZix ed esplora il catalogo di esempi pronti all'uso per altri snippet. I banner dei cookie sono parenti stretti dei popup: elimina anche quelli con la nostra guida su /it/blog/hide-cookie-walls-and-consent-popups. Con entrambe le regole salvate, il web si legge come dovrebbe: solo il contenuto.

Valuta questo articolo

Nessuna valutazione — sii il primo.

Provalo tu stesso

Installa JustZix e incolla qualsiasi snippet di questo articolo. Due minuti da zero a una regola funzionante su tutti i tuoi dispositivi.

Ottieni JustZix

Funzionalità · Come funziona · Esempi · Casi d'uso