您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Ensures that school zones polygons render beneath the roads layer.
// ==UserScript== // @name WME School Zones under Roads // @namespace https://greasyfork.org/en/users/your-username // @version 1.0.1 // @description Ensures that school zones polygons render beneath the roads layer. // @author Honkson // @match https://*.waze.com/editor* // @match https://*.waze.com/*/editor* // @exclude https://*.waze.com/user/editor* // @grant none // @license MIT // ==/UserScript== (function () { 'use strict'; function moveSchoolZoneLayerBehind() { const mapViewport = document.querySelector('.olMapViewport'); if (!mapViewport) return; const svgRoots = mapViewport.querySelectorAll('svg > g[id^="OpenLayers_Layer_Vector_"]'); let schoolZoneGroup = null; svgRoots.forEach(g => { const path = g.querySelector('path[fill="#F18200"]'); if (path && !schoolZoneGroup) { schoolZoneGroup = g; } }); if (schoolZoneGroup && schoolZoneGroup.parentNode) { const parent = schoolZoneGroup.parentNode; const firstLayer = parent.firstChild; if (firstLayer && firstLayer !== schoolZoneGroup) { parent.insertBefore(schoolZoneGroup, firstLayer); } } } const observer = new MutationObserver(() => { setTimeout(moveSchoolZoneLayerBehind, 100); }); const waitForMap = setInterval(() => { const map = document.querySelector('.olMapViewport'); if (map) { clearInterval(waitForMap); observer.observe(map, { childList: true, subtree: true }); moveSchoolZoneLayerBehind(); } }, 500); })();