您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Monitor Google Maps for requests and copy formatted coordinates to four decimal places wherever you click on page
// ==UserScript== // @name Google Maps Coordinates Copy // @namespace http://rant.li/boson // @version 1.2 // @description Monitor Google Maps for requests and copy formatted coordinates to four decimal places wherever you click on page // @author Boson // @match https://www.google.com/maps/* // @grant GM_setClipboard // @license GNU AGPLv3 // ==/UserScript== (function() { 'use strict'; function extractCoordinates(url) { const regex = /!([23])d([-+]?\d+\.\d+)!([34])d([-+]?\d+\.\d+)/g; let match; let lastMatch = null; while ((match = regex.exec(url)) !== null) { lastMatch = match; } if (lastMatch) { let latitude, longitude; if (lastMatch[1] === '3') { latitude = parseFloat(lastMatch[2]); longitude = parseFloat(lastMatch[4]); } else { latitude = parseFloat(lastMatch[4]); longitude = parseFloat(lastMatch[2]); } latitude = latitude.toFixed(4); longitude = longitude.toFixed(4); return `${latitude}, ${longitude}`; } return null; } function copyCoordinates(coordinates) { if (coordinates) { GM_setClipboard(coordinates); } } (function(open) { XMLHttpRequest.prototype.open = function(method, url) { this.addEventListener('load', function() { const coordinates = extractCoordinates(url); copyCoordinates(coordinates); }); open.apply(this, arguments); }; })(XMLHttpRequest.prototype.open); })();