您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
在指定网站的表格上方添加按钮,点击将表格以Markdown格式复制到剪贴板
当前为
// ==UserScript== // @name HTML表格转化为Markdown表格 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 在指定网站的表格上方添加按钮,点击将表格以Markdown格式复制到剪贴板 // @author You // @match https://blog.csdn.net/* // @match https://www.cnblogs.com/* // @match https://www.runoob.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=csdn.net // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; var NL = "\n"; function convertTableElementToMarkdown(tableEl) { var rows = []; var trEls = tableEl.getElementsByTagName('tr'); for(var i=0; i<trEls.length; i++) { var tableRow = trEls[i]; var markdownRow = convertTableRowElementToMarkdown(tableRow, i); rows.push(markdownRow); } return rows.join(NL); } function convertTableRowElementToMarkdown(tableRowEl, rowNumber) { var cells = []; var cellEls = tableRowEl.children; for(var i=0; i<cellEls.length; i++) { var cell = cellEls[i]; cells.push(cell.innerText + ' |'); } var row = '| ' + cells.join(" "); if(rowNumber == 0) { row = row + NL + createMarkdownDividerRow(cellEls.length); } return row; } function createMarkdownDividerRow(cellCount) { var dividerCells = []; for(let i = 0; i<cellCount; i++) { dividerCells.push('---' + ' |'); } return '| ' + dividerCells.join(" "); } function convertTable(x) { var content = "<table>" + x.innerHTML + "</table>"; processor.innerHTML = content.replace(/\s+/g, ' '); var tables = processor.getElementsByTagName('table'); var markdownResults = ''; if(tables) { for(let e of tables) { var markdownTable = convertTableElementToMarkdown(e); markdownResults += markdownTable + NL + NL; } navigator.clipboard.writeText(markdownResults); } else { console.log('No table found'); } } let processor = document.createElement("processor"); let x = document.getElementsByTagName("table") for (let i = 0; i < x.length; i++){ let one = document.createElement("button"); one.innerText = "Copy"; one.addEventListener('click', function () { convertTable(x[i]) }) x[i].parentNode.insertBefore(one, x[i]) } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址