屏蔽腾讯新闻广告

屏蔽腾讯新闻广告。

  1. // ==UserScript==
  2. // @name 屏蔽腾讯新闻广告
  3. // @version 1.2
  4. // @author ChatGPT
  5. // @description 屏蔽腾讯新闻广告。
  6. // @match https://new.qq.com/*
  7. // @match https://view.inews.qq.com/*
  8. // @match https://xw.qq.com/*
  9. // @run-at document-start
  10. // @grant none
  11. // @namespace https://gf.qytechs.cn/users/452911
  12. // ==/UserScript==
  13.  
  14. // 需要转换的带有"##"前缀的 CSS 选择器列表
  15. const adBlockList = `##div.ad-cell-common
  16. ##[style*="0vw"][style*="0vh"][style*="0px"]
  17. ##.VideoArticleBottomAdContainer,.ssp.nospl[data-boss-once='true'],DIV[data-boss-expo*='ad&s_or'],DIV[id^='App_WAP_share_page_']
  18. ##[class*="bottom-bar"]
  19. ##div[class^="bottom-bar_buttonWrap__"]
  20. ##div[class^="slider-top-bar_sliderWrapper__"]
  21. ###opeApp
  22. ##[class^='ad_ssp']
  23. ##A[dt-eid^='em_item_ad']
  24. ##.elevator[class^="jsx-"]`;
  25.  
  26. // 解析处理输入列表,生成适当的 CSS 规则
  27. const selectors = adBlockList
  28. .split('\n') // 用换行符将文本分成数组中的项
  29. .map(item => item.trim()) // 清除每个项的空白字符
  30. .filter(item => item.startsWith('##')) // 确保只使用以'##'开头的项
  31. .map(item => item.substring(2)) // 去除'##'前缀
  32. .join(',\n'); // 将所有选择器组合成一个字符串,并用逗号隔开
  33.  
  34. // 创建一个包含解析后选择器的<style>标签,将元素的 display 属性设为 none
  35. const styleBlock = document.createElement('style');
  36. styleBlock.innerHTML = `${selectors} { display: none !important; }`;
  37.  
  38. // 最后将<style>标签添加到文档的<head>中
  39. document.head.appendChild(styleBlock);

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址