您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Gives NodeID of selected segments
当前为
// ==UserScript== // @name WME GetNodeID // @namespace https://greasyfork.org/fr/scripts/9909-wme-getnodeid // @description Gives NodeID of selected segments // @include https://www.waze.com/editor/* // @include https://www.waze.com/*/editor/* // @author Fafa114 // @version 0.3 // @grant na // @copyright 2015 Fafa114 // ==/UserScript== //V0.3 Suppression scroll automatique bas de page //V0.3 Ajout lien pour sélectionner tous les n° de noeuds //V0.3 Divers if ('undefined' == typeof __RTLM_PAGE_SCOPE_RUN__) { (function page_scope_runner() { var my_src = "(" + page_scope_runner.caller.toString() + ")();"; // If we're _not_ already running in the page, grab the full source of this script. // Create a script node holding this script, plus a marker that lets us know we are running in the page scope (not the Greasemonkey sandbox). // Note that we are intentionally *not* scope-wrapping here. var script = document.createElement('script'); script.setAttribute("type", "text/javascript"); script.textContent = "var __RTLM_PAGE_SCOPE_RUN__ = true;\n" + my_src; // Insert the script node into the page, so it will run, and immediately remove it to clean up. Use setTimeout to force execution "outside" of the user script scope completely. setTimeout(function() { document.body.appendChild(script); document.body.removeChild(script); }, 0); })(); return; // Stop running, because we know Greasemonkey actually runs us in an anonymous wrapper. } function bootstrap(){ if (typeof(unsafeWindow) === "undefined"){ unsafeWindow = ( function () { var dummyElem = document.createElement('p'); dummyElem.setAttribute('onclick', 'return window;'); return dummyElem.onclick(); }) (); } /* begin running the code! */ setTimeout(init, 700); } function NodesID() { var Nbr = Waze.selectionManager.selectedItems.length; var NbrSeg = 0; var Texte = ""; var Mem = []; if (Nbr > 0) { for(i = 0; i<Nbr; i++){ if (Waze.selectionManager.selectedItems[i].model.type == "segment") { var TrouveFrom = false; var TrouveTo = false; for(u = 0; u<Mem.length; u++){ if (Waze.selectionManager.selectedItems[i].model.attributes.fromNodeID == Mem[u]){ TrouveFrom = true; } if (Waze.selectionManager.selectedItems[i].model.attributes.toNodeID == Mem[u]){ TrouveTo = true; } } if (TrouveFrom == false){ Mem[Mem.length] = Waze.selectionManager.selectedItems[i].model.attributes.fromNodeID; if (i == 0){ Texte = Waze.selectionManager.selectedItems[i].model.attributes.fromNodeID; }else{ Texte = Texte + ', ' + Waze.selectionManager.selectedItems[i].model.attributes.fromNodeID; } } if (TrouveTo == false){ Mem[Mem.length] = Waze.selectionManager.selectedItems[i].model.attributes.toNodeID; Texte = Texte + ', ' + Waze.selectionManager.selectedItems[i].model.attributes.toNodeID; } NbrSeg++; } } if (NbrSeg > 0) { segeditgen = document.getElementById("segment-edit-general"); segextra = document.getElementById("segment-extra-details"); if (!segextra) { segextra = document.createElement('div'); segextra.id = 'segment-extra-details'; segeditgen.appendChild(segextra); } segextra.innerHTML = '<div{width:20px;}><A HREF="https://www.waze.com/forum/viewtopic.php?f=1316&t=141844"><B>WME GetNodeID</B></A><br>Segment(s) sélectionné(s) : ' + NbrSeg + '<br><br><div id="GNTitre" title="Sélectionner les noeuds" style="cursor: pointer" onclick="javascript:$(\'#GNID\').selectText();">Liste des IDs de Noeuds:</div><div id="GNID">' + Texte + '</div></div>'; //$("#sidebar").animate({ scrollTop: $("#sidebar").offset().top + 5000 }, 1); //5000 pour être sûr d'être tout en bas... } } return true; } jQuery.fn.selectText = function(){ var doc = document; var element = this[0]; if (doc.body.createTextRange) { var range = document.body.createTextRange(); range.moveToElementText(element); range.select(); } else if (window.getSelection) { var selection = window.getSelection(); var range = document.createRange(); range.selectNodeContents(element); selection.removeAllRanges(); selection.addRange(range); } }; function init(){ Waze = unsafeWindow.Waze; if(typeof(Waze) == 'undefined'){ window.setTimeout(init, 700); return; } Waze.selectionManager.events.register("selectionchanged", null, NodesID); NodesID(); // exécution de la fonction dès le lancement du script pour fonctionnement avec un permalink } bootstrap();