自动展开

自动展开文档 隐藏部分

目前为 2022-01-17 提交的版本。查看 最新版本

// ==UserScript==
// @name         自动展开
// @description  自动展开文档	隐藏部分
// @version      0.1
// @namespace    https://github.com/AirBashX/AutoUnfold/
// @author       airbash
// @include      /^https://www.jianshu.com/p/.*/
// @grant        none
// @license      GPL-3.0
// ==/UserScript==

(function () {

	/**
	 * 网站列表
	 * @type {name/url/操作类型}
	 */
	var websites = [
		{
			name: "简书",
			url_regex: /^https:\/\/www.jianshu.com\/p\/.*/,
			hide_click_item: [
				{
					type: "class",
					value: "ant-btn nP21pp",
				},
			],
		}
	];

	var handler = GetWebsite();

	/**
	 * 定时器:执行自动展开命令
	 * @type       {Function}
	 */
	var interval = setInterval(() => {
		
		//模拟点击'展开'命令;
		if (handler.hide_click_item) {
			for (var click_item of handler.hide_click_item) {
				var click_eles = GetItemElement(click_item);
				if (click_eles.length > 0) {
					for (var click_ele of click_eles) {
						if (
							click_ele != null &&
							click_ele.getAttribute("opened") != "yes"
						) {
							click_ele.click();
							click_ele.setAttribute("opened", "yes");
						}
					}
				}
			}
		}
	}, 100);
	
	/**
	 * 校验当前网站是否匹配
	 * @return     {Array}  flags?网站对象:退出脚本
	 */
	function GetWebsite() {
		for (var website of websites) {
			if (website.url_regex.test(location.href)) {
				return website;
			}else{
				return [];
			}
		}
	}


	/**
	 * 分辨选择器类型
	 * @param      {object}  item    选择器
	 * @return     {Array}   falgs?合适的元素:退出脚本
	 */
	function GetItemElement(item) {
		if (item.type == "class") {
			return document.getElementsByClassName(item.value);
		} else if (item.type == "id") {
			return [document.getElementById(item.value)];
		} else if (item.type == "tag") {
			return document.getElementsByTagName(item.value);
		}
		return [];
	}
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址