您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
For Pestpac, adds buttons at the bottom of the tables to copy their information on a specific website
// ==UserScript== // @name Copy Address Information Buttons // @version 2.2 // @description For Pestpac, adds buttons at the bottom of the tables to copy their information on a specific website // @author Jamie Cruz // @match https://app.pestpac.com/location/* // @grant none // @license MIT // @namespace https://greasyfork.org/users/1433767 // ==/UserScript== (function() { 'use strict'; function addCopyButton(tableId, buttonText, color, formatSingleLine = false) { var table = document.getElementById(tableId); if (table) { var button = document.createElement("button"); button.innerHTML = buttonText; button.style.margin = "10px"; button.style.padding = "10px"; button.style.backgroundColor = color; button.style.color = "white"; button.style.border = "none"; button.style.borderRadius = "5px"; button.style.cursor = "pointer"; button.style.width = "160px"; // Set a fixed width for both buttons button.style.height = "25px"; // Set a fixed height for both buttons // Center-align text both vertically and horizontally button.style.display = "flex"; button.style.justifyContent = "center"; button.style.alignItems = "center"; // Create a new table row and cell var newRow = table.insertRow(-1); // Insert row at the end of the table var newCell = newRow.insertCell(0); newCell.colSpan = table.rows[0].cells.length; // Make the cell span across all columns // Insert the button into the new cell newCell.appendChild(button); // Function to copy table data button.addEventListener("click", function() { var textContent = table.innerText; // Remove unwanted words var cleanedText = textContent.replace(/EMAIL|Map View|Street View|PHONE|Copy Location Address|Copy Billto Address|Calendar\/Email|/g, ""); // Clean extra line breaks if (formatSingleLine) { cleanedText = cleanedText.replace(/\n\s*\n/g, " -- ").trim().replace(/\n/g, " -- "); } else { cleanedText = cleanedText.replace(/\n\s*\n/g, "\n").trim(); } // Copy cleaned text to clipboard navigator.clipboard.writeText(cleanedText).then(function() { alert("Address copied to clipboard!"); }).catch(function(err) { console.error("Failed to copy table data.", err); }); }); } } window.onload = function() { addCopyButton("location-address-block", "Copy Location Address", "#1565C0"); addCopyButton("location-address-block", "Calendar/Email", "#2E67F8", true); addCopyButton("billto-address-block", "Copy Billto Address", "#1565C0"); addCopyButton("billto-address-block", "Calendar/Email", "#2E67F8", true); }; })();