🏠 Home 

S1论坛已读已阅提示

S1论坛已阅提示,ignore old thread on saraba1st


安装此脚本?
// ==UserScript==
// @name         S1论坛已读已阅提示
// @namespace    http://www.saraba1st.com/
// @version      0.8
// @description  S1论坛已阅提示,ignore old thread on saraba1st
// @author       不能放过孩子
// @match        *.saraba1st.com/*
// @grant        none
// ==/UserScript==
(function () {
'use strict';
var prevUrl =localStorage.getItem("prevUrl");
var prevUrlTime =localStorage.getItem("prevUrlTime"); ;
var curUrl =  window.location.href;
localStorage.setItem("prevUrl",curUrl);;
localStorage.setItem("prevUrlTime",new Date().getTime());;
var ignoreIdList = localStorage.getItem("ignoreIdList");
ignoreIdList = ignoreIdList ? ignoreIdList : '';
if (ignoreIdList && ignoreIdList.length / #### > 20) {//限制最大20kb后重置
ignoreIdList = '';
}
ignoreIdList = ignoreIdList.replace(/\"/g, '');
ignoreIdList = ignoreIdList.replace(/\\/g, '');
if (ignoreIdList) {
var ignore = ignoreIdList.split(',');
if (typeof (ignore) !== 'object' || ignore.length <= 0) {
ignore = [];
}
} else {
var ignore = [];
}
var pushList = [];
var threadlist = document.getElementsByClassName('xst');
for (var index in threadlist) {
var href = threadlist[index].href;
if (href) {
var threadMatch = href.match(/thread\-[0-9]+\-/g);
var threadStr = threadMatch && threadMatch.length > 0 ? threadMatch[0] : '';
var treadIdMatch = threadStr.match(/[0-9]+/g);
var idStr = threadStr && threadStr.length > 0 ? treadIdMatch[0] : '';
if (idStr) {
var patt = null;
var exist = false;
for (var i in ignore) {
if (typeof (ignore[i]) === 'string') {
var ignoreId = ignore[i];
patt = new RegExp(ignoreId, "g");
if (patt.test(idStr)) {
exist = true;
}
}
}
if (exist) {
threadlist[index].style.color = 'gray';
} else {
pushList.push(idStr);
}
}
}
}
var newIgnore = ignore.concat(pushList);
var ignoreIdList = newIgnore.join(',');
debugger;
if( (prevUrl === undefined || prevUrl === null) || prevUrl === curUrl || new Date().getTime() - prevUrlTime > 24 * 60 * 60 * 100){
//refresh 刷新、第一次加载的时候不启用
return
}else{
localStorage.setItem("ignoreIdList", JSON.stringify(ignoreIdList));
}
})();