MAGgogo

MAG磁力站快速切换

  1. // ==UserScript==
  2. // @name MAGgogo
  3. // @description MAG磁力站快速切换
  4. // @include http://cili1*.com/*
  5. // @include http://oabt*.com/*
  6. // @include http://www.cili1*.com/*
  7. // @icon http://imgsrc.baidu.com/forum/pic/item/6fd108fb43166d229cb84fac452309f79152d2e2.png
  8. // @author congxz6688
  9. // @version 2018.3.28.0
  10. // @grant unsafeWindow
  11. // @namespace https://greasyfork.org/users/39
  12. // ==/UserScript==
  13.  
  14.  
  15. //此处供用户添加美剧的名称
  16. //中英文名皆可,英文单词之间别用空格用小写的点,每个剧名都要用小写的双引号括起来,相互之间用小写的逗号隔开
  17. var addByUser = ["群英.Clique", "天赋异禀.The.Gifted", "零异频道", "路西法", "天蝎", "致命武器", "罪恶黑名单", "Elementary", "僵尸国度", "冰血暴", "行尸之惧", "女作家", "传教士", "MacGyver", "Deception", "福尔摩斯探案集", "两世奇人", "全境通告", "沉默天使", "贵族侦探"];
  18.  
  19. /**********************以下部分不要随意修改**********************/
  20. function addStyle(css) {
  21. document.head.appendChild(document.createElement("style")).textContent = css;
  22. }
  23.  
  24. var signCSS = "";
  25. signCSS += ".link-list-wrapper{float:none !important; margin:0 auto !important} .useColor{color:#000000;} .gogoTd{line-height:22px; padding:0px 8px;} .gogo{text-decoration:none} .gogo:hover{text-decoration:underline}";
  26. signCSS += "#floatGogo{border:1px solid grey; z-index:999; padding:8px 6px; background-color:white; color: blue;}";
  27. signCSS += "#MAG_gogo{cursor:pointer; color:#000000; background_color:grey; height:28px; width:30px; padding:1px 3px 9px 5px; position:fixed; top:200px; left:2px; z-index:99999; border: solid 1px #000000;}"
  28. addStyle(signCSS);
  29.  
  30. //函数 绝对定位
  31. function getElementLeft(element) {
  32. var actualLeft = element.offsetLeft;
  33. var current = element.offsetParent;
  34. while (current !== null) {
  35. actualLeft += current.offsetLeft;
  36. current = current.offsetParent;
  37. }
  38. return actualLeft;
  39. }
  40. //函数 绝对定位
  41. function getElementTop(element) {
  42. var actualTop = element.offsetTop;
  43. var current = element.offsetParent;
  44. while (current !== null) {
  45. actualTop += current.offsetTop;
  46. current = current.offsetParent;
  47. }
  48. return actualTop;
  49. }
  50. var Tds1 = [];
  51. //建表函数
  52. function creaseTable(UrlLength) {
  53. Tds1 = [];
  54. cons = 2;
  55. var tablepp = document.createElement("table");
  56. tablepp.setAttribute("width", "100%");
  57. var trs = [];
  58. for (ly = 0; ly < Math.ceil(UrlLength / cons); ly++) {
  59. var tr = document.createElement("tr");
  60. mmd = trs.push(tr);
  61. tablepp.appendChild(tr);
  62. }
  63. for (ls = 0; ls < UrlLength; ls++) {
  64. var td = document.createElement("td")
  65. td.setAttribute("class", "gogoTd");
  66. wq = Tds1.push(td);
  67. trs[Math.floor(ls / cons)].appendChild(td);
  68. }
  69. return tablepp
  70. }
  71.  
  72. //悬浮列表窗创建函数http://oabt004.com/index/index?c=&k=%E5%A4%A9%E8%9D%8E
  73. function openGogoList(e) {
  74. if (!document.getElementById("floatGogo")) {
  75. if (e.target.id == "MAG_gogo") {
  76. var jjue = e.target;
  77. var thisTop = getElementTop(jjue) + 25;
  78. }
  79. var thisLeft = getElementLeft(jjue);
  80. addStyle("#floatGogo{position:" + ((e.target.id == "MAG_gogo") ? "fixed" : "absolute") + "; left:" + thisLeft + "px; top:" + (thisTop+2) + "px}");
  81. var floatGogo = document.createElement("div");
  82. floatGogo.id = "floatGogo";
  83. var fTable = creaseTable(addByUser.length);
  84. floatGogo.appendChild(fTable);
  85. if (addByUser.length > 0) {
  86. for (vv = 0; vv < addByUser.length; vv++) {
  87. var anch = document.createElement("a");
  88. anch.href = "http://" + window.location.host + "/index?c=&k=" + addByUser[vv];
  89. anch.title = addByUser[vv];
  90. anch.className = "gogo";
  91. anch.target = "_blank";
  92. anch.innerHTML = '<fon class="useColor">' + addByUser[vv] + '</fon>';
  93. Tds1[vv].appendChild(anch);
  94. }
  95. }
  96. floatGogo.addEventListener("mouseleave", closeGogoList, false)
  97. document.body.appendChild(floatGogo);
  98. }
  99. }
  100. function closeGogoList() {
  101. document.getElementById("floatGogo").parentNode.removeChild(document.getElementById("floatGogo"));
  102. }
  103.  
  104. //创建按钮
  105. var gogoDiv = document.createElement("div");
  106. gogoDiv.innerHTML = "go";
  107. gogoDiv.id = "MAG_gogo";
  108. gogoDiv.addEventListener("mouseover", openGogoList, false);
  109. gogoDiv.addEventListener("click", function () {
  110. window.location = "http://" + window.location.host + "/";
  111. }, false);
  112. document.body.appendChild(gogoDiv);
  113.  
  114. //剧集右侧的快速下载链接
  115. if (document.getElementsByClassName("link-list")) {
  116. var allDDs = document.querySelectorAll(".link-list>li");
  117. for (var i = 0; i < allDDs.length; i++) {
  118. var ed2k = allDDs[i].getAttribute("data-ed2k");
  119. var magnet = allDDs[i].getAttribute("data-magnet");
  120. var spp = document.createElement("span");
  121. var cm = document.createElement("a");
  122. cm.className = "cm";
  123. cm.href = magnet;
  124. cm.innerHTML = "[MEG]"
  125. spp.appendChild(cm);
  126. var ce = document.createElement("a");
  127. ce.className = "ce";
  128. ce.href = ed2k;
  129. ce.innerHTML = "[ed2k]"
  130. spp.appendChild(ce);
  131. allDDs[i].appendChild(spp);
  132. }
  133. }