您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
为 gitlab issue 生成目录(需要自己改下 domain)
当前为
- // ==UserScript==
- // @name gitlab
- // @namespace http://tampermonkey.net/
- // @version 1.2
- // @description 为 gitlab issue 生成目录(需要自己改下 domain)
- // @author RobinTsai
- // @match https://gitlab.com/*/issues/*
- // @grant none
- // @require https://code.jquery.com/jquery-latest.js
- // ==/UserScript==
- // jquery API: http://jquery.cuishifeng.cn/
- (function() {
- 'use strict';
- var tocID = "TOC"
- $("a.toggle-sidebar-button").on("click", function() {
- setTimeout(function() {
- var pos = $("a.toggle-sidebar-button").css("width");
- console.log("pos:", pos);
- // $("#TOCofJianShu").css("left", pos);
- $("#"+tocID).animate({"left": pos}, "slow");
- //.slideToggle("slow"); 用于显示和隐藏的缓慢切换
- // $(selector).animate({params},speed,callback);
- }, 255)
- });
- var idx = 0
- var hNames = []
- var content = $("body,.detail-page-description")
- var headings = content.find("h1,h2,h3,h4,h5")
- // 获取 headings 并设置 id
- var minLevel = 5 // 收集最小的层级 h1 => 1, h2 => 2
- var levels = []
- for (idx in headings) {
- if (isNaN(Number(idx))) {
- continue
- }
- var heading = headings[idx]
- if (heading.classList.length > 0) {
- continue
- }
- heading.id = heading.innerText
- var level = parseInt(heading.tagName.replace("H", ""))
- if (levels.indexOf(level) == -1) {
- levels.push(level)
- }
- if (level < minLevel) {
- minLevel = level
- }
- hNames.push({
- tagLevel: level,
- name: heading.innerText,
- })
- }
- var mapLevelToMarginLeft = {}
- levels.sort()
- for (idx in levels) {
- mapLevelToMarginLeft[levels[idx]] = 20 * idx + "px"
- }
- var innerH = []
- for (idx in hNames) {
- var elem = $("<a>", {
- style: "white-space: nowrap; margin-left: " + mapLevelToMarginLeft[hNames[idx].tagLevel],
- innerText: hNames[idx].name,
- text: hNames[idx].name,
- href: "#"+hNames[idx].name,
- })
- innerH.push( elem )
- }
- var headingWrap = $("<div>", {
- id: tocID,
- style: "\
- position: fixed; \
- z-index: 1000; \
- top: 100px; \
- max-height: 400px; \
- width: 174px; \
- overflow: auto; \
- border: solid 1px #826b6b; \
- padding: 5px; \
- padding-left: 12px; \
- left: 220px; \
- background-color: #dedede; \
- ".replace(/ /g, ""),
- mouseover: function() {
- },
- mouseout: function() {
- },
- })
- // hNames.push(content.find("h1._1RuRku").text())
- for (idx in innerH) {
- innerH[idx].appendTo(headingWrap)
- $("<br>").appendTo(headingWrap)
- }
- headingWrap.appendTo("body");
- })();