Categorization Map

enter something useful

当前为 2014-05-14 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name Categorization Map
  3. // @version 0.7
  4. // @description enter something useful
  5. // @updateurl http://userscripts.org/scripts/source/453289.user.js
  6. // @match https://www.mturkcontent.com/dynamic/hit*
  7. // @require http://code.jquery.com/jquery-1.9.0.min.js
  8. // @copyright 2014+, Tjololo
  9. // @namespace https://greasyfork.org/users/710
  10. // ==/UserScript==
  11.  
  12. var elem = document.getElementsByClassName('span7 ng-scope')[0];
  13. var addy = elem.innerText.split(':')[1];
  14. var api = "";
  15. var zoomlevel = 20;
  16. var googlePrefix = "https://maps.googleapis.com/maps/api/staticmap?markers=size:mid%7Ccolor:red%7C";
  17. var url = googlePrefix + encodeURIComponent(addy.replace(",","")) + "&size=512x512&zoom="+zoomlevel+"&maptype=hybrid&sensor=false";
  18. if (api != "")
  19. url += "&key="+api;
  20. console.log(url);
  21. var ifrm = document.createElement("img");
  22. ifrm.setAttribute("src", url);
  23. ifrm.setAttribute("id", "map");
  24. ifrm.style.width = 512+"px";
  25. ifrm.style.height = 512+"px";
  26.  
  27. var zoomlvl = document.createElement("div");
  28. zoomlvl.setAttribute("id","zoom_level");
  29. zoomlvl.innerHTML="Zoom: "+zoomlevel;
  30. elem.appendChild(ifrm);
  31. elem.appendChild(zoomlvl);
  32.  
  33. var content = document.getElementById("wrapper");
  34. content.tabIndex = "0";
  35. content.focus();
  36.  
  37. var element = document.getElementById('preview_overlay');
  38. if (element)
  39. element.parentNode.removeChild(element);
  40.  
  41. document.onkeydown = showkeycode;
  42. function showkeycode(evt){
  43. var keycode = evt.keyCode;
  44. switch (keycode) {
  45. case 65: //a
  46. document.getElementById("A - Great for solar").click();
  47. document.getElementById("mturk_form").submit();
  48. break;
  49. case 66: //b
  50. document.getElementById("B - OK for solar").click();
  51. document.getElementById("mturk_form").submit();
  52. break;
  53. case 67: //c
  54. document.getElementById("C - Not so good for solar").click();
  55. document.getElementById("mturk_form").submit();
  56. break;
  57. case 68: //d
  58. document.getElementById("D - Bad for solar").click();
  59. document.getElementById("mturk_form").submit();
  60. break;
  61. case 69: //e
  62. document.getElementById("E - Cannot find the roof").click();
  63. document.getElementById("mturk_form").submit();
  64. break;
  65. case 13: //enter
  66. document.getElementById("mturk_form").submit();
  67. break;
  68. case 107: //+
  69. zoomlevel += 1;
  70. url = googlePrefix + encodeURIComponent(addy.replace(",","")) + "&size=512x512&zoom="+zoomlevel+"&maptype=hybrid&sensor=false";
  71. console.log(url);
  72. document.getElementById("map").setAttribute("src", url);
  73. document.getElementById("zoom_level").innerHTML="Zoom: "+zoomlevel;
  74. break;
  75. case 187: //+
  76. zoomlevel += 1;
  77. url = googlePrefix + encodeURIComponent(addy.replace(",","")) + "&size=512x512&zoom="+zoomlevel+"&maptype=hybrid&sensor=false";
  78. console.log(url);
  79. document.getElementById("map").setAttribute("src", url);
  80. document.getElementById("zoom_level").innerHTML="Zoom: "+zoomlevel;
  81. break;
  82. case 109: //+
  83. zoomlevel -= 1;
  84. url = googlePrefix + encodeURIComponent(addy.replace(",","")) + "&size=512x512&zoom="+zoomlevel+"&maptype=hybrid&sensor=false";
  85. console.log(url);
  86. document.getElementById("map").setAttribute("src", url);
  87. document.getElementById("zoom_level").innerHTML="Zoom: "+zoomlevel;
  88. break;
  89. case 189: //+
  90. zoomlevel -= 1;
  91. url = googlePrefix + encodeURIComponent(addy.replace(",","")) + "&size=512x512&zoom="+zoomlevel+"&maptype=hybrid&sensor=false";
  92. console.log(url);
  93. document.getElementById("map").setAttribute("src", url);
  94. document.getElementById("zoom_level").innerHTML="Zoom: "+zoomlevel;
  95. break;
  96. }
  97. }