Notas Técnicas do zhaoJian

Novas regras de bloqueio de anúncios VIP do QQ Mail

Tecnologia ~4726 palavras · 12 min de leitura - visualizações

A nova versão do QQ Mail foi lançada há algum tempo. No início, não era possível ordenar pastas e o feedback enviado não teve resposta.

Na atualização de agosto, finalmente foi possível ordenar pastas. Mas junto com isso vieram anúncios VIP avassaladores e vergonhosos. Não sei o que a equipe de operações está pensando, estão tão desesperados por dinheiro? Colocar 9 anúncios recomendados em uma página, só o VIP do QQ Mail poderia fazer isso!!!

Novas regras de bloqueio de anúncios VIP do QQ Mail

Assim nasceram as novas regras de bloqueio de anúncios VIP do QQ Mail. Testado apenas no Adblock Plus e Brave, não sei se funciona normalmente em outros navegadores.

Isenção de responsabilidade: Estas regras de filtro de anúncios são apenas para meu uso pessoal, como backup ao trocar de sistema. Se você viu estas regras, por favor feche os olhos imediatamente e não as use como referência. Não assumo qualquer responsabilidade legal decorrente de referência, citação, uso pessoal ou comercial.

Endereço de atualização contínua: https://github.com/zhaojiannet/qq-mail-adblock

[Adblock Plus]
! Title: Regras de bloqueio de anúncios VIP do QQ Mail
! Description: Bloquear anúncios de promoção VIP no novo QQ Mail
! Homepage: https://github.com/zhaojiannet/qq-mail-adblock
! Last modified: 2025-12-25
! Version: 1.0.0
! License: MIT
! =====================================
! Lado esquerdo do avatar
! =====================================
mail.qq.com##div.xmail-cmp-vip-float-bubble:has(.cmp-vip-float-bubble-body)
mail.qq.com##div:has(span:has-text(开通 VIP 会员)):has(.cmp-vip-icon)
mail.qq.com##div.cmp-vip-float-bubble-body:has-text(让邮箱更好用)
! =====================================
! Pop-up do avatar
! =====================================
wx.mail.qq.com##.xmail-cmp-vip-embed-bubble
wx.mail.qq.com##div.xmail-ui-btn.ui-btn-size32.ui-btn-them-clear-gray.footer-btn:nth-of-type(1)
wx.mail.qq.com##.vip-icon-click.vip-icon-in-panel.cmp-vip-state-icon.common-state-icon
wx.mail.qq.com##.profile-user-info > .cmp-vip-state-icon.common-state-icon
wx.mail.qq.com##.cmp-vip-icon-click.cmp-vip-icon-in-panel.cmp-vip-state-icon.cmp-common-state-icon
! =====================================
! Armazenamento do aplicativo
! =====================================
wx.mail.qq.com##div.setting-group:nth-of-type(1)
wx.mail.qq.com##.content-time
! =====================================
! Configurações - Topo
! =====================================
wx.mail.qq.com##.xmail-cmp-vip-banner-common
! =====================================
! Configurações - Armazenamento
! =====================================
wx.mail.qq.com##.mail-setting-storage > div.setting-item-wrap:nth-of-type(2) > div.setting-item-row:nth-of-type(2)
! =====================================
! Configurações - Tema de exibição
! =====================================
wx.mail.qq.com##.setting-item-wrap.mail-setting-themes > div.setting-item-row:nth-of-type(1)
wx.mail.qq.com##.setting-item-wrap.mail-setting-themes > div.setting-item-row:nth-of-type(2) > .setting-theme-cards
wx.mail.qq.com##.setting-item-wrap.mail-setting-themes > div.setting-item-row:nth-of-type(3)
! =====================================
! Configurações - Envio de e-mail
! =====================================
wx.mail.qq.com##.inactive-account-table
! =====================================
! Configurações - Consulta de autoatendimento
! =====================================
wx.mail.qq.com##.xmail-ui-hyperlink.query-head-note
wx.mail.qq.com##.xmail-ui-hyperlink.ui-hyperlink-is-inline.tab-title-vip-link
! =====================================
! Configurações - Global
! =====================================
wx.mail.qq.com##.cmp-streamer-right

Código para evitar que o pop-up desapareça automaticamente, executar no console

setTimeout(() => {
// Salvar o addEventListener original
const originalAddEventListener = EventTarget.prototype.addEventListener;
// Interceptar todos os novos eventos de clique
EventTarget.prototype.addEventListener = function(type, listener, options) {
if (type === 'click') {
console.log('Evento de clique interceptado');
return; // Não adicionar este evento
}
return originalAddEventListener.call(this, type, listener, options);
};
// Remover todos os eventos de clique existentes na página
document.querySelectorAll('*').forEach(el => {
const clone = el.cloneNode(true);
if (el.parentNode) {
el.parentNode.replaceChild(clone, el);
}
});
console.log('✓ Todas as funcionalidades de fechar ao clicar foram desativadas');
}, 3000);
Compartilhar:

Comentários