您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
Make relative line number available on leetcode
当前为
您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
- // ==UserScript==
- // @name Leetcode relative line number
- // @namespace http://tampermonkey.net/
- // @version 0.1.1
- // @description Make relative line number available on leetcode
- // @author You
- // @match https://leetcode.com/problems/*
- // @icon https://www.google.com/s2/favicons?domain=leetcode.com
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- // Your code here...
- function setRelativeLineNumber() {
- let activeLineHTML = document.querySelector("div.CodeMirror-activeline > div > div").innerHTML;
- let activeLineNumber = 0;
- if (activeLineHTML != null && activeLineHTML !== undefined) {
- let lineNumber = activeLineHTML.match("[0-9]+");
- if (lineNumber == null) { return; }
- activeLineNumber = parseInt(lineNumber[0]);
- }
- let allLines = document.querySelectorAll("div.CodeMirror-linenumber");
- allLines.forEach(line => {
- if (!line.hasAttribute("natural-line")) {
- line.setAttribute("natural-line", parseInt(line.innerHTML));
- }
- line.innerHTML = Math.abs(line.getAttribute("natural-line") - activeLineNumber).toString();
- if (line.innerHTML == "0") {
- line.innerHTML = " ";
- }
- });
- };
- setInterval(setRelativeLineNumber, 300);
- document.addEventListener('click', setRelativeLineNumber);
- })();