火狐扩展:自动移除CSDN博客页面的登录/注册提示框

经常浏览 CSDN 博客的朋友会发现,经常会有一个占用空间很大的登录/注册提示框显示在博客页面底部,如下图红框所示:



要去掉的话必须手动叉掉。分析后发现只有在满足以下两个条件的时候才会出现这个提示框:

1、未登录CSDN账号

2、博客皮肤为「大白」


其中第一点是我们可以控制的,第二点我们控制不了。无论如何,在未登录CSDN账号的情况下查看CSDN博客的情况还是很经常出现的,这就导致我们需要经常面对这个提示框。


本文介绍一个火狐浏览器扩展 Remove_pulllog-box,该扩展能够自动移除相应页面的登录/注册提示框。这是我编写的第一个火狐扩展,下面简单介绍一下。


首先查看该提示框的源代码,如下:



可见类名为 pulllog-box。查看该类选择器的定义如下:



由这些属性可以判断,该博客页面就只有提示框这一个节点使用了这个类选择器。那么移除这个提示框的工作就很清晰了,首先判断当前页面是否为CSDN博客页面,如果是,则在页面中寻找使用了 pulllog-box 类选择器的节点,如果找到,移除即可。


明白了怎么做,还得明白火狐浏览器的扩展怎么编写。这类文章网络上有很多人做了分享,不过都不够好,因为似乎火狐浏览器的扩展编写规范更新得很快,最好的选择还是直接看官方文档


我并没有完整地看完了整个官方文档,因为我的扩展的功能比较简单。写这个扩展完全是兴趣驱动的,看太深入很有可能会打消我的兴趣,够用即可。


下图是扩展的目录概览,只有 manifest.json 和 Remove_pulllog-box.js 两个文件:



以下是 manifest.json 文件,这是每一个扩展都必须要有的文件,它包含着扩展的基本配置信息。这里值的注意的是 content_scripts 这个键值对,它告诉浏览器,当打开的 url 满足 *://blog.csdn.net/*(即CSDN博客)时,将 Remove_pulllog-box.js 注入到页面中。:

{
	"manifest_version": 2,
	"name": "Remove_pulllog-box",
	"version": "1.0",
	
	"description": "Remove pulllog-box in CSDN blog.",
	
	"content_scripts": [
		{
			"matches": ["*://blog.csdn.net/*"],
			"js": ["Remove_pulllog-box.js"]
		}
	]
}


以下是 Remove_pulllog-box.js,十分简单,在这里移除 pulllog-box:

var box = document.getElementsByClassName("pulllog-box");

if (box && box.length == 1)
{
	// 只能有一个 div 使用了 pulllog-box 类选择器
	box[0].parentNode.removeChild(box[0]);
}


编写完成之后,可以在火狐浏览器地址栏输入 about:debugging,然后选择“临时载入附加组件”以测试和调试扩展。




测试正常之后,就可以发布到火狐附加组件了,官方文档有详细介绍。此时在火狐附加组件里面搜索 Remove_pulllog-box,便可以得到发布的扩展了:



因为当前(2018年1月)火狐浏览器使用的扩展编写规范是 WebExtensions API,在官方文档里面说它和 Chrome 浏览器在很大程度上是兼容的,所以原来是打算同时发布到 Google Store 的。无奈注册谷歌开发者并且发布扩展,既费钱又麻烦,最终作罢。



Github仓库:https://github.com/plu-s/Remove_pulllog-box

火狐浏览器扩展:https://developer.mozilla.org/zh-CN/Add-ons

Remove_pulllog-box主页:https://addons.mozilla.org/zh-CN/firefox/addon/remove_pulllog-box/?src=api

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 、 1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READmE.文件(md如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值