Greasy Fork is available in English.

LeetCode 付费题目移除(兼容新版本力扣)

LeetCode 付费题目移除, 匹配 1.题目列表 2. 官方题单 3. 标签 tag 界面 4. 题目界面的左下角"题目列表"

Autor
IDDX
Dziennych instalacji
0
Wszystkich instalacji
210
Oceny
2 0 0
Wersja
1.1.0.1
Utworzono
01-05-2021
Zaktualizowano
11-09-2021
Licencja
GPL-3.0-only
Dotyczy

描述都在简介里了

仅适配 LCCN

已知问题:

  1. 某些操作不重新创建 dom 而是重用已有的 dom (如筛选器的筛选功能), 导致正常题目被隐藏, 可以解决但没必要, 因为会增加很多逻辑降低脚本运行速度, 遇到了就刷新网页或暂时关闭脚本就行 新版界面采用了重用 dom 的方式, (bei po)进行了适配
  2. 每页数量选择"全部"时, 多次触发 Observer 将会导致脚本遍历上万次 dom, 进而导致页面短暂无响应(在我的电脑上会卡 5s 左右)
  3. 在 tag 界面切换 tag 或在 problem-list 界面切换题单时不会进行付费题目的移除, 不过监视这个事件个人感觉没啥必要

ps: 由于力扣前端最近经常大改版, 失效了请反馈

09/11/2021 更新日志

1.1.0.0 版本进行了力扣新版界面适配, 同时取消了对旧版界面的适配, 如果有人需要的话请反馈, 我会重新进行添加

新版本更新了匹配算法, 能够减少遍历 dom 元素的次数, 原理是通过判断题号和通过 api 传递的数据进行匹配. 接收到的数据将会在本地进行缓存, 过期时间是一周, 由于接收题目列表数据(将近 900k, 比网页上一般的图片都要大)需要一定的时间, 因此初次使用脚本和缓存过期时移除付费题目可能存在一分钟之内的延迟.

ps: 如果觉得缓存过期时间过短的话, 可以自行修改脚本, 我就不提供图形界面上的配置了, 相关的配置规则我已经进行了注释, 见 line 44.

ps: 新版力扣真几把卡, 不知道这些前端怎么想的, 为了颜值牺牲性能? 我不是专业前端, 但是我感觉这种做法好像不怎么可取吧...... 而且新界面我感觉还没有旧版页面清爽