之前推荐过CSDN自动展开阅读的chorme插件,但今天无法使用了,这让我很不解,于是去翻看了CSDN的HTML页面代码。

1
2
3
4
5
6
<a class="btn-readmore" data-track-click="{&quot;mod&quot;:&quot;popu_376&quot;,&quot;con&quot;:&quot;,https://blog.csdn.net/jiangxuege/article/details/87912947,readmore&quot;}">
展开阅读全文
<svg class="icon chevrondown" aria-hidden="true">
<use xlink:href="#csdnc-chevrondown"></use>
</svg>
</a>

在插件中的JS代码为:

1
2
3
4
5
var btn = document.getElementById("btn-readmore");
if (btn)
{
btn.click();
}

这应该是CSDN方修改了一些页面结构,这里不管,看到class,手动修改插件为document.getElementsByClassName,但实际上我从浏览器console上得到的结果是:

1
auto.js:4 Uncaught TypeError: btn.click is not a function

这貌似有些尴尬,但还有方法,就是查看CSDN是怎么找到这个标签的。

使用浏览器的检查找到这个标签,右键——> Copy ——> Copy Js Path。

1
document.querySelector("#mainBox > main > div.hide-article-box.hide-article-pos.text-center > a")

我们借鉴一下采用querySelector这个方法,结果是成功的,将JS代码改为:

1
2
3
4
5
var btn = document.querySelector(".btn-readmore");
if (btn)
{
btn.click();
}

已提交pr并合并,直接拉仓库即可。

还有没有其他简单的方法去除CSDN的这个展开呢,有的,chorme使用油猴插件,其中有一个作者的插件就能完成,而且自带去除广告的功能,比这个更为强大。

CSDN自动展开+去广告+净化剪贴板+免登陆