您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add a sidebar to documentation pages on https://www.php.net/ to navigate through headers.
// ==UserScript== // @name PHP Documentation Sidebar // @namespace https://www.php.net/ // @version 1.2 // @description Add a sidebar to documentation pages on https://www.php.net/ to navigate through headers. // @author Yi Wang // @match https://www.php.net/manual/* // @grant none // ==/UserScript== (function() { 'use strict'; // Create the sidebar const sidebar = document.createElement('div'); sidebar.style.position = 'fixed'; sidebar.style.left = '0'; sidebar.style.top = '60px'; sidebar.style.width = '200px'; sidebar.style.height = 'calc(100% - 60px)'; sidebar.style.overflowY = 'auto'; sidebar.style.backgroundColor = '#f9f9f9'; sidebar.style.padding = '10px'; sidebar.style.borderRight = '1px solid #ccc'; sidebar.style.zIndex = '1000'; // Find all headers const headers = document.querySelectorAll('h1, h2, h3, h4, h5, h6'); headers.forEach(header => { // Ensure each header has an ID for linking if (!header.id) { header.id = 'header-' + Math.random().toString(36).substr(2, 9); } // Create a link for each header const link = document.createElement('a'); link.href = '#' + header.id; link.textContent = header.textContent.replace('¶', '').trim(); link.style.display = 'block'; link.style.marginBottom = '5px'; link.style.textDecoration = 'none'; link.style.color = 'purple'; // Add indentation based on header level const level = parseInt(header.tagName.substring(1), 10); link.style.paddingLeft = (level - 1) * 10 + 'px'; sidebar.appendChild(link); }); document.body.appendChild(sidebar); // Adjust the main layout to accommodate the sidebar document.body.style.marginLeft = '210px'; })();