| 
			 
					阅读:7757回复:14
				 
				有无办法永久保存链接的已访问痕迹
					有个很纳闷的地方,我经常逛论坛,有些链接我明明逛过了,历史记录也一直有的,但是当下点击的时候能看到访问过的痕迹,过一段时间后这些痕迹又不见了,不知道为什么?有什么办法可以永久保存吗?即便我重新设置已访问链接为别的颜色,一样只能保存几天,不知道是哪里出了问题。				 
							 | 
	|
| 
			 1楼# 
								发布于:2021-10-13 21:06				
			
					我估计可能是每个帖子链接的末尾加了个【extra=page=1】【extra=page=2】类似这样的,不知道当这个链接不与上次处在同一页码时,访问的浏览痕迹就失效了。				 
							 | 
	|
| 
			 2楼# 
								发布于:2021-10-14 09:30				
			 | 
	|
| 
			 3楼# 
								发布于:2021-10-14 18:31				
			hmcgft:firefox扩展感谢,试用了一下,发现不能自定义规则,而且也是有同样的问题,当已访问的主题出现在别的页码时,就被视为未访问了。我自己也用Header Editor修改去除【extra=page=】发现没有卵用,只能在点击后才发生重定向事件。  | 
	|
| 
			 4楼# 
								发布于:2021-11-04 22:30				
			(function() {
    'use strict';
   
   
  var x = document.querySelectorAll(".s.xst[href*='extra=page']");
  if (x.length > 0) {
    for (let i = 0; i < x.length; i++) {
         console.log(x[i].href.replace(/(forum\.php\?mod=viewthread&tid=\d+)(&extra=page%3D\d+)(.*)/g,"$1$3"))
                                       }
                    }  
     
  })();
论坛链接的内容大概是这样的,具体论坛不可描述,在此不便放出,还望见谅: https://www.firefox.net.cn/forum.php?mod=viewthread&tid=684425&extra=page%3D1 https://www.firefox.net.cn/forum.php?mod=viewthread&tid=679749&extra=page%3D100&page=7 https://www.firefox.net.cn/forum.php?mod=viewthread&tid=684381&extra=page%3D4&page=2 我自己尝试写了个脚本,索性遍历所有论坛帖子链接(不适用于本论坛),然后逐个去除【extra=page】,发现控制台输出是有效的,但我把console.log替换成 document.write却又没有效果,不知道为什么 另外,我平时是搭配Super_preloaderPlus_one_New自动翻页的,不知道该添加什么样的代码,即便是自动翻页,新页的链接依旧能去除【extra=page】呢?  | 
	|
| 
			 5楼# 
								发布于:2021-11-05 00:23				
			function remove() {
  if (!window.location.href.match('www.firefox.net.cn')) return
 
  let run = () => {
    let cnt = 0
    let aList = document.querySelectorAll(".s.xst[href*='extra=page']")
    for (let a of aList) {
      const href = a.getAttribute('href')
      var url = href.replace(/(forum\.php\?mod=viewthread&tid=\d+)(&extra=page%3D\d+)(.*)/g,"$1$3")
        a.setAttribute('href', url)
        ++cnt
      }
     
    return cnt > 0
  }
 
  run()
 
  let MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver
 
  let observer = new MutationObserver(function (mutations) {
    run()
  })
 
  observer.observe(document.body, {
    childList: true,
    subtree: true
  })
}
 
 
 
(function () {
  'use strict';
  remove()
})();终于搞定!!借鉴了https://greasyfork.org/zh-CN/scripts/431920				 | 
	|
| 
			 6楼# 
								发布于:2021-11-05 19:45				
			
					使用 ubO 能很简单地重定向去掉, 
							||www.firefox.net.cn^$document,queryprune=extra 多个参数还可以使用正则 ||www.firefox.net.cn^$document,queryprune=/^(extra|extra1|extra2)=/  | 
	|
| 
			 7楼# 
								发布于:2021-11-07 00:28				
			lonely_8:使用 ubO 能很简单地重定向去掉,没有效果哦,不是很清楚这两条规则的用法  | 
	|
| 
			 8楼# 
								发布于:2021-11-07 14:49				
			kidzgy:没有效果哦,不是很清楚这两条规则的用法回到原帖复制到 uBO 的自定义静态规则里就行,然后点击你在 4 楼所发的链接就能看到效果。 注意该类型规则前面的域名是你想要的去掉某参数的链接域名,而不是链接所在页面的域名。 需要 uBO 1.32.0 及以上版本才能支持,详细参考: https://github.com/uBlockOrigin/uBlock-issues/wiki/Static-filter-syntax#removeparam  | 
	|
| 
			 9楼# 
								发布于:2021-11-07 19:25				
			lonely_8:复制到 uBO 的自定义静态规则里就行,然后点击你在 4 楼所发的链接就能看到效果。原来如此我明白了,但是实际的效果是这样的: 页面的访问痕迹,其实是根据链接的href属性鉴别的,如果通过ubo加的规则,是要在鼠标左键点击之后才跳转,跟header editor跳转其实没有本质的区别,ubo和he都没有从href属性上去掉extra属性。 而5楼的脚本内容,可以在鼠标点击之前,直接从href属性去除extra参数,以达到浏览器鉴别是否已访问。  | 
	|
| 
			 10楼# 
								发布于:2021-12-23 21:20				
			 | 
	|
| 
			 11楼# 
								发布于:2021-12-24 16:27				
			 | 
	|
| 
			 12楼# 
								发布于:2021-12-25 17:46				
			 | 
	|
| 
			 13楼# 
								发布于:2021-12-25 20:01				
			 | 
	|
| 
			 14楼# 
								发布于:2021-12-28 20:37				
			 | 
	|