|
1 | 1 | // ==UserScript== |
2 | 2 | // @name LeetCodeRating|显示力扣周赛难度分 |
3 | 3 | // @namespace https://github.com/zhang-wangz |
4 | | -// @version 3.1.0 |
| 4 | +// @version 3.1.1 |
5 | 5 | // @license MIT |
6 | 6 | // @description LeetCodeRating 力扣周赛分数显现和相关力扣小功能,目前浏览器更新规则,使用该插件前请手动打开浏览器开发者模式再食用~ |
7 | 7 | // @author 小东是个阳光蛋(力扣名) |
|
34 | 34 | function userScript() { |
35 | 35 | 'use strict'; |
36 | 36 |
|
37 | | - const version = '3.1.0'; |
38 | | - let pbstatusVersion = 'version21'; |
39 | | - let t2rateVersion = 'Version12'; |
40 | | - let levelVersion = 'Version26'; |
| 37 | + const version = '3.1.1'; |
| 38 | + let pbstatusVersion = 'version22'; |
| 39 | + let t2rateVersion = 'Version13'; |
| 40 | + let levelVersion = 'Version27'; |
41 | 41 | // xhr劫持时使用,保留原始 |
42 | 42 | const dummySend = XMLHttpRequest.prototype.send; |
43 | 43 | const originalOpen = XMLHttpRequest.prototype.open; |
|
102 | 102 |
|
103 | 103 | // 因为字符显示问题,暂时去除 |
104 | 104 | // <span class="layui-progress-text myfont">0%</span> |
| 105 | + // 同步文案 |
105 | 106 | const pbstatusContent = ` |
106 | 107 | <div class="layui-row layui-col-space15"> |
107 | 108 | <div class="layui-card"> |
108 | 109 | <div class="layui-card-header" style="text-align: center; background: linear-gradient(135deg, #5FB878, #009688);"> |
109 | | - <h3 style="color: white; margin: 0;"><i class="layui-icon layui-icon-refresh-3"></i> LeetCode Rating 数据重置</h3> |
| 110 | + <h3 style="color: white; margin: 0;"><i class="layui-icon layui-icon-refresh-3"></i> LeetCode Rating 数据同步</h3> |
110 | 111 | </div> |
111 | 112 | <div class="layui-card-body" style="padding: 30px; text-align: center;"> |
112 | 113 | <div class="layui-text" style="margin-bottom: 20px;"> |
113 | | - <p style="font-size: 16px; color: #666;">🚀 准备重置您的数据,请稍候...</p> |
| 114 | + <p style="font-size: 16px; color: #666;">🚀 准备同步您的数据,请稍候...</p> |
114 | 115 | </div> |
115 | 116 | |
116 | | - <div class="layui-progress layui-progress-big" lay-showPercent="true" lay-filter="demo-filter-progress1" style="margin: 25px 0;"> |
| 117 | + <div class="layui-progress layui-progress-big" lay-showPercent="true" lay-filter="demo-filter-progress" style="margin: 25px 0;"> |
117 | 118 | <div class="layui-progress-bar layui-bg-green" lay-percent="0%"></div> |
118 | 119 | </div> |
119 | 120 | |
120 | 121 | <div class="layui-btn-container"> |
121 | | - <button id="statusasyc1" class="layui-btn layui-btn-normal layui-btn-radius" lay-on="loading1"> |
122 | | - <i class="layui-icon layui-icon-refresh"></i> 开始重置 |
| 122 | + <button id="statusasyc" class="layui-btn layui-btn-normal layui-btn-radius" lay-on="loading"> |
| 123 | + <i class="layui-icon layui-icon-refresh"></i> 开始同步 |
123 | 124 | </button> |
124 | 125 | </div> |
125 | 126 | </div> |
126 | 127 | </div> |
127 | 128 | </div> |
128 | 129 | `; |
129 | | - |
| 130 | + // 重置文案 |
130 | 131 | const pbstatusContent1 = ` |
131 | 132 | <div class="layui-row layui-col-space15"> |
132 | 133 | <div class="layui-card"> |
|
170 | 171 | type: 1, |
171 | 172 | content: pbstatusContent, |
172 | 173 | title: '同步所有题目状态', |
173 | | - area: ['550px', '250px'], |
| 174 | + area: ['560px', '284px'], |
174 | 175 | shade: 0.6, |
175 | 176 | shadeClose: true |
176 | 177 | }; |
|
180 | 181 | type: 1, |
181 | 182 | content: pbstatusContent1, |
182 | 183 | title: '重置当前页面题目状态', |
183 | | - area: ['550px', '250px'], |
| 184 | + area: ['560px', '284px'], |
184 | 185 | shade: 0.6, |
185 | 186 | shadeClose: true |
186 | 187 | }; |
|
2578 | 2579 | levelTc2Id = {}; |
2579 | 2580 | levelTe2Id = {}; |
2580 | 2581 | let dataStr = res.response; |
| 2582 | + // 处理NaN字段, 把NaN改成null |
| 2583 | + dataStr = dataStr.replace(/\bNaN\b/g, "null"); |
2581 | 2584 | let json = JSON.parse(dataStr); |
2582 | 2585 | for (const element of json) { |
2583 | 2586 | if (typeof element.TitleCn == 'string') { |
|
0 commit comments