您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Updates page's URL to current WME location
// ==UserScript== // @name WME URLoc // @version 2024.02.24.001 // @description Updates page's URL to current WME location // @author turbopirate (corrected by_chk update) // @include /^https:\/\/(www|beta)\.waze\.com(\/\w{2,3}|\/\w{2,3}-\w{2,3}|\/\w{2,3}-\w{2,3}-\w{2,3})?\/editor\b/ // @grant none // @namespace https://greasyfork.org/users/166361 // ==/UserScript== (function() { 'use strict'; let wazeapi = W || window.W; let last = {}; let updateURL = () => { if (wazeapi.map.getCenter() && (last.lat !== wazeapi.map.getCenter().lat || last.lon !== wazeapi.map.getCenter().lon || last.zoom !== wazeapi.map.getZoom())) { let lonlat=(new OpenLayers.LonLat(wazeapi.map.getCenter().lon, wazeapi.map.getCenter().lat)).transform(new OpenLayers.Projection("EPSG:900913"), new OpenLayers.Projection("EPSG:4326")); let lon = Math.round(lonlat.lon * 100000) / 100000; let lat = Math.round(lonlat.lat * 100000) / 100000; let urloc = `${window.location.protocol}//${window.location.host}${window.location.pathname}?env=row&lon=${lon}&lat=${lat}&zoomLevel=${wazeapi.map.getZoom()}`; window.history.pushState({path:urloc}, document.title, urloc); last.lat = wazeapi.map.getCenter().lat; last.lon = wazeapi.map.getCenter().lon; last.zoom = wazeapi.map.getZoom(); } setTimeout(updateURL, 500); }; let waitWaze = () => { wazeapi = W || window.W; if (wazeapi && wazeapi.map) { last.lat = wazeapi.map.getCenter().lat; last.lon = wazeapi.map.getCenter().lon; last.zoom = wazeapi.map.getZoom(); setTimeout(updateURL, 500); return; } setTimeout(waitWaze, 500); console.log("URLOC: Waiting..."); }; if (window.history.pushState) waitWaze(); else console.error("URLOC: Your browser is not supported!"); })();