🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o JetPopup que não abre no mobile no WordPress

Time Full Services Time Full Services
Tipo Page Builders
Nome do erro JetPopup não abre no mobile EN: JetPopup not opening on mobile devices
Severidade Atenção
Descrição O JetPopup que não abre no mobile geralmente acontece quando o gatilho do popup depende de um evento que não existe no toque, quando a opção de visibilidade esconde o popup em telas pequenas, ou quando um plugin de cache adia o JavaScript do JetPopup no celular.

O que é JetPopup que não abre no mobile?

O JetPopup que não abre no mobile é a situação em que um popup criado com o plugin JetPopup, da Crocoblock, funciona normalmente no desktop mas não dispara quando o visitante acessa o site pelo smartphone. O popup existe e está publicado, porém o gatilho configurado nunca é acionado no toque, ou o popup é renderizado e fica oculto por uma regra de visibilidade de dispositivo.

O JetPopup depende de três peças para abrir: um gatilho (Trigger) que define o evento que dispara o popup, as condições de exibição que controlam onde e para quem ele aparece, e o JavaScript do plugin carregado na página. No mobile, qualquer uma dessas peças pode falhar: um gatilho de saída de cursor não existe em telas de toque, a visibilidade pode estar marcada apenas para desktop, e otimizadores como WP Rocket podem adiar o script que comanda a abertura. Identificar qual das três peças quebrou no celular é o caminho da correção.

Como identificar

  • O popup abre normalmente no desktop, mas nunca aparece ao acessar a mesma página pelo celular.
  • O gatilho configurado como ‘On Page Load’ funciona no desktop e fica inerte no mobile, sem nenhum erro visível.
  • O popup que depende do gatilho de saída (Exit Intent / On User Inactivity) nunca dispara no smartphone, porque não há cursor saindo da tela.
  • No console do navegador do celular aparecem erros de JavaScript ou avisos de script bloqueado logo ao carregar a página.
  • O popup pisca por um instante e some, ou simplesmente não é encontrado no HTML quando a página é aberta em modo mobile.
Antes de começar: Antes de mexer nas exclusões de cache ou desativar plugins em produção, faça um backup do site ou teste primeiro em um ambiente de staging, para reverter caso outra funcionalidade dependa do mesmo script.

Como prevenir

  • Sempre teste cada popup em um smartphone real, e não apenas no preview responsivo do editor, antes de publicar.
  • Para popups que precisam aparecer no mobile, escolha gatilhos compatíveis com toque, como On Page Load e On Scroll, evitando eventos de saída de cursor.
  • Ao ativar adiamento de JavaScript em plugins de cache, sempre inclua o script do JetPopup nas exclusões e revalide os popups no celular.
  • Documente as condições de exibição e a visibilidade por dispositivo de cada popup, para que um ajuste de responsividade não esconda o popup sem querer.

Causa

  • O gatilho do popup é 'On User Inactivity' ou um evento de saída de cursor, que não existe em telas de toque: sem mouse saindo da viewport, o JetPopup nunca dispara no mobile.
  • A opção de visibilidade do popup ou da seção que o contém está marcada para esconder em dispositivos móveis, fazendo o JetPopup ser carregado mas mantido oculto no celular.
  • Um plugin de otimização como WP Rocket ou Perfmatters está com 'Delay JavaScript Execution' ou adiamento de scripts ativo, e o JavaScript do JetPopup só executa após uma interação que o popup de carregamento esperava disparar antes.
  • O popup está vinculado a um gatilho de rolagem (On Scroll) com porcentagem que a página mobile, mais curta, não atinge, ou a um elemento de clique que não existe no layout responsivo.
  • Um conflito de JavaScript com outro plugin ou com o tema interrompe o carregamento da biblioteca do JetPopup especificamente no breakpoint mobile, impedindo a inicialização do popup.

Como resolver

  1. Revise o gatilho do popup para um evento compatível com toque: Abra o popup no JetPopup e verifique o gatilho configurado. Gatilhos de saída de cursor e de inatividade não existem em telas de toque. Para o mobile, prefira 'On Page Load' com um pequeno atraso ou 'On Scroll', que funcionam no celular.
    Painel WP -> JetPopup -> abra o popup desejado
    Em Trigger, troque 'On User Inactivity' por 'On Page Load' ou 'On Scroll'
    Salve e teste a página em um smartphone real
  2. Confira a visibilidade por dispositivo do popup: Verifique se o popup ou a seção que o contém não está oculto em telas pequenas pela opção de responsividade. Um popup marcado para aparecer apenas no desktop é carregado mas mantido escondido no celular.
    Painel WP -> JetPopup -> abra o popup -> aba de configurações de exibição
    Garanta que a visibilidade não esteja restrita a Desktop
    Reative a exibição para Mobile e salve
  3. Desligue o adiamento de JavaScript para o mobile: Se você usa WP Rocket ou Perfmatters com adiamento de scripts, o JavaScript do JetPopup pode não executar a tempo no celular. Adicione o script do JetPopup à lista de exclusões do adiamento e limpe o cache.
    Painel WP -> WP Rocket -> aba File Optimization -> Delay JavaScript Execution
    Adicione 'jet-popup' à lista de exclusões do adiamento
    Limpe o cache: WP Rocket -> Clear Cache
  4. Ajuste o gatilho de rolagem para a altura do mobile: Se o gatilho é 'On Scroll' por porcentagem, a página mobile costuma ser mais curta e pode não atingir o percentual configurado para o desktop. Reduza a porcentagem ou use rolagem por pixels para garantir o disparo no celular.
    Painel WP -> JetPopup -> abra o popup -> Trigger 'On Scroll'
    Reduza a porcentagem de rolagem (ex.: de 70 para 30)
    Salve e valide a abertura em um celular real
  5. Isole conflito de JavaScript no breakpoint mobile: Se o popup ainda não abrir no celular, abra o console do navegador no modo mobile e procure erros de JavaScript. Desative os outros plugins um a um e troque para um tema padrão para identificar o que interrompe a biblioteca do JetPopup.
    Abra a página no celular ou no modo responsivo do navegador (F12 -> Toggle device)
    No Console, observe erros de JavaScript ao carregar a página
    Painel WP -> Plugins -> desative os demais plugins um a um até o popup voltar
JavaScript
// Abre um JetPopup específico por toque, contornando gatilhos que falham no mobile.
// Substitua 123 pelo ID do seu popup (visível na URL de edição do JetPopup).
jQuery( document ).ready( function( $ ) {
    var popupId = 123;
    // Dispara o popup logo apos o primeiro toque na tela, no mobile.
    $( document ).one( 'touchstart', function() {
        if ( window.JetPopupFrontend ) {
            window.JetPopupFrontend.openPopup( popupId );
        }
    } );
} );

Perguntas frequentes

Por que meu JetPopup abre no desktop mas não no celular
Na maioria dos casos o gatilho depende de um evento que não existe no toque, como saída de cursor ou inatividade, ou a visibilidade do popup está restrita ao desktop. Troque o gatilho por On Page Load ou On Scroll e reative a exibição para mobile.
O gatilho de saída de tela funciona no mobile
Não de forma confiável. O gatilho de saída depende do cursor deixar a viewport, algo que não acontece em telas de toque. No celular, prefira gatilhos como On Page Load com atraso ou On Scroll, que respondem a eventos reais do mobile.
O WP Rocket pode impedir o JetPopup de abrir no celular
Pode. Quando o adiamento de JavaScript do WP Rocket está ativo, o script do JetPopup só executa após uma interação, o que atrasa ou impede o disparo automático no mobile. Adicione jet-popup às exclusões do Delay JavaScript Execution e limpe o cache.
Como faço o JetPopup aparecer só no mobile
Abra o popup e use as condições de exibição e a visibilidade por dispositivo para mostrar somente em telas pequenas. Combine isso com um gatilho compatível com toque, como On Page Load, e teste sempre em um celular real.
O gatilho On Scroll não dispara no celular, o que fazer
A página mobile costuma ser mais curta que a do desktop e pode não atingir a porcentagem de rolagem configurada. Reduza o percentual de rolagem ou use rolagem por pixels para garantir que o popup dispare nas telas menores.
Preciso de código para corrigir o JetPopup no mobile
Na maioria dos casos não, pois a correção é feita pelo painel ajustando gatilho e visibilidade. Quando há conflito de script, um snippet que abre o popup por evento de toque pode ajudar, mas o caminho principal é a configuração no painel do JetPopup.
Como saber se o problema é do JetPopup ou de outro plugin
Abra a página no modo mobile, verifique o console do navegador e desative os demais plugins um a um, recarregando a cada teste. Se o popup voltar a abrir ao desativar um plugin, o conflito está nele, não no JetPopup.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes