Timmy 2cd3031560 改善 Leaflet popup 樣式並強化清理保護
- 新增 isLeafletDescendant 輔助函式,統一所有清理流程的地圖元素豁免邏輯
- 加入 popup / pane 內容保護 CSS,避免被廣告清除規則誤殺
- 移除 popup 預設的白色三角 tip,wrapper 改用自訂 padding 控制上下留白
- MutationObserver 略過 Leaflet 後代節點變動,避免點 marker 時誤觸發清理
- 版本 1.1.7 → 1.1.15

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 14:19:48 +08:00
2026-04-27 10:46:30 +08:00
2026-04-27 10:46:30 +08:00
2026-04-27 10:46:30 +08:00
2026-04-27 10:46:30 +08:00
2026-04-27 10:46:30 +08:00

TWPKInfo 廣告清除器

一個專為台灣寶可夢資訊站TWPKInfo設計的使用者腳本移除廣告和多餘介面元素讓地圖功能更純淨好用。

功能特色

🧹 介面清理

  • 移除頂部導覽列:隱藏網站標題、主選單等導覽元素
  • 清除底部功能列:移除底部導航欄和廣告區塊
  • 廣告阻擋:完全阻止 Google AdSense 廣告載入
  • 動態監控:即時偵測並清理新增的廣告元素

🗺️ 地圖最佳化

  • 全屏地圖:地圖自動擴展至整個瀏覽器視窗
  • 保留地圖控制:完整保留縮放、定位等 Leaflet 地圖功能
  • 響應式調整:視窗大小變化時自動重新調整地圖尺寸

🔧 使用體驗增強

  • 中文工具提示:為地圖控制按鈕添加清晰的中文說明
  • 智慧定位:工具提示會根據螢幕邊界自動調整顯示位置
  • 快速識別:滑鼠懸停即可了解各按鈕功能

技術規格

清理策略

使用多重偵測機制確保完整清理:

  1. 位置偵測:識別固定定位在底部的元素
  2. 尺寸分析:移除符合導航列特徵的大型元素
  3. 類名匹配:依據 CSS 類名模式過濾
  4. 內容識別:根據文字內容判斷元素性質
  5. 結構分析:檢查 DOM 層級結構關係

保護機制

嚴格保護重要功能元素:

  • #map 主地圖容器
  • .leaflet-container 地圖引擎
  • .leaflet-control-* 地圖控制元件
  • [class*="pokemon"] 寶可夢相關元素
  • .leaflet-control-attribution 地圖版權資訊

工具提示系統

  • 純 CSS 實現:使用偽元素避免 JavaScript 衝突
  • 自適應佈局:根據可視區域自動調整顯示方向
  • 多重觸發:支援滑鼠懸停、鍵盤焦點、螢幕閱讀器

支援頁面

  • 主地圖https://twpkinfo.com/
  • 道館地圖https://twpkinfo.com/igym.aspx
  • 寶可夢地圖https://twpkinfo.com/ipoke.aspx
  • 任務地圖https://twpkinfo.com/iquest.aspx
  • 所有子域https://*.twpkinfo.com/*

兼容性

瀏覽器支援

  • Chrome / Chromium 完全支援
  • Firefox 完全支援
  • Safari 支援(需安裝 Userscripts 擴充功能)
  • Edge 完全支援

使用者腳本管理器

  • Tampermonkey 推薦使用
  • Greasemonkey 支援
  • Violentmonkey 支援
  • Userscripts Safari 支援

效能特性

  • 輕量級:腳本大小 < 20KB
  • 低記憶體:使用 CSS 隱藏取代 DOM 移除
  • 高效能:智慧節流避免過度執行
  • 非侵入性:不影響網站核心功能

版本資訊

當前版本1.1.7
授權條款MIT License
執行時機:頁面開始載入時(document-start
權限需求:無需特殊權限(@grant none

API 文件

主要函數

addCleanupCSS()

注入清理樣式規則,隱藏廣告和導覽元素。

cleanupBottomBar()

移除底部功能列,返回清理元素數量。

cleanupTopNavigation()

清理頂部導覽列,返回移除元素數量。

applyToolbarTooltips()

為地圖工具添加中文工具提示。

startCleanupMonitor()

啟動動態內容監控,自動清理新增元素。

配置選項

腳本內建智慧偵測,通常無需手動配置。如需客製化,可修改以下區段:

  • CSS 選擇器規則(第 36-208 行)
  • 工具提示文字對應(第 259-306 行)
  • 偵測策略參數(第 354-390 行)

更新日誌

查看完整更新紀錄和技術變更,請參閱 SUMMARY.md

Description
TWPKInfo 廣告清除器 - 移除廣告和多餘介面元素,讓地圖功能更純淨好用
Readme 52 KiB
Languages
JavaScript 100%