您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Colorize Managerzone players skills valid for mobile versions
当前为
// ==UserScript== // @name MZ Colorized Skills (Mobile Version) // @namespace http://tampermonkey.net/ // @version 0.12 // @description Colorize Managerzone players skills valid for mobile versions // @author xente // @contributor vanjoge (https://gf.qytechs.cn/es/users/220102-vanjoge) // @match https://www.managerzone.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=managerzone.com // @grant GM_xmlhttpRequest // @license GNU // ==/UserScript== // Based in the vanjoge original script: https://gf.qytechs.cn/es/scripts/373382-van-mz-playeradvanced // Thanks vanjoge for the original code! (function() { 'use strict'; var max_skill="<img src='data:image/gif;base64,R0lGODlhDAAKAJEDAP////8AAMyZmf///yH5BAEAAAMALAAAAAAMAAoAAAIk3BQZYp0CAAptxvjMgojTEVwKpl0dCQrQJX3T+jpLNDXGlDUFADs='/>" var unmaxed_skill="<img src='data:image/gif;base64,R0lGODlhDAAKAJEDAP///8zM/wAA/////yH5BAEAAAMALAAAAAAMAAoAAAIk3CIpYZ0BABJtxvjMgojTIVwKpl0dCQbQJX3T+jpLNDXGlDUFADs='/>" var maxed_skill_hockey let maxed_imgs = new Map(); maxed_imgs.set('maxed_soccer', "<img src='data:image/gif;base64,R0lGODlhDAAKAJEDAP////8AAMyZmf///yH5BAEAAAMALAAAAAAMAAoAAAIk3BQZYp0CAAptxvjMgojTEVwKpl0dCQrQJX3T+jpLNDXGlDUFADs='/>"); maxed_imgs.set('unmaxed_soccer', "<img src='data:image/gif;base64,R0lGODlhDAAKAJEDAP///8zM/wAA/////yH5BAEAAAMALAAAAAAMAAoAAAIk3CIpYZ0BABJtxvjMgojTIVwKpl0dCQbQJX3T+jpLNDXGlDUFADs='/>"); maxed_imgs.set('maxed_hockey', "<img src='data:image/gif;base64,R0lGODlhDAAKANUkAOXq//8pKunt//ZTVPz19dXZ+tzk/+NAV+bl+Ojs//4wMeWkreXp/f4tLvRMT+Dm/+Xr/7lra/4vMepKSv7///ZRUvz8/tmHhs/Z/+xKSfVeYNCJkfhFRPUxOuBUZvRsb9ri//39//hDQv8oKf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACQALAAAAAAMAAoAAAZCQBLpMhqJMgiLkEQoOkeDwnLzdIowwuoTlNUWDRSSF/oIkUQBZ6BRAWiEkIlopPgsEhzPMgIQCBgOEiNLQh1PB4RBADs='/>"); maxed_imgs.set('unmaxed_hockey', "<img src='data:image/gif;base64,R0lGODlhDAAKALMNAOnt/+Xr/9ri/6/A/6G1/73L/52x/8/Z/4Wf/32Z/1x9/0Rr/x9N/////wAAAAAAACH5BAEAAA0ALAAAAAAMAAoAAAQwsDXD2FJB6sot0UnHLYckdoJ5VmmzWoi0nAuxSIEyW0qxJBrFAAAYKCoaSYgD1EQAADs='/>"); let colors = new Map(); colors.set('skc_4', '#ff00ff'); colors.set('skc_3', '#0000ff'); colors.set('skc_2', '#b8860b'); colors.set('skc_1', '#ff0000'); function waitToDOM(function_to_execute, classToSearch, elementIndex,miliseconds) { let interval = setInterval(function () { let elements = document.querySelectorAll(classToSearch); if (elements.length > 0 && elements[elementIndex]) { clearInterval(interval); clearTimeout(timeout); function_to_execute(); } }, 100); let timeout = setTimeout(function () { clearInterval(interval); }, miliseconds); } (function() { const open = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url) { this.addEventListener('load', function() { if (url.includes('ajax.php?p=transfer&sub=transfer-search')) { waitToDOM(colorizeSkills, ".playerContainer", 0,7000) } }); return open.apply(this, arguments); }; })(); let params = new URLSearchParams(window.location.search); var type="players" if (params.get('p') === 'transfer') { type="market"; } setSport() setDeviceFormat() document.addEventListener('click', function(event) { const link = event.target.closest('.player_link'); // Busca el ancestro más cercano con esa clase if (link) { waitToDOM(colorizeSkills, ".playerContainer", 0,7000) } }); waitToDOM(colorizeSkills, ".playerContainer", 0,7000) async function colorizeSkills() { var playerDivs = document.querySelectorAll('div.playerContainer'); playerDivs.forEach((div, divIndex) => { var tableIndex=0; if( window.stx_device=="mobile"){ tableIndex=1; } var spanClass="clippable" var skillsTable = playerDivs[divIndex].querySelectorAll('table.player_skills.player_skills_responsive'); if(type==="market"){ skillsTable = playerDivs[divIndex].querySelectorAll('table.player_skills.player_skills_transfer'); tableIndex=0; spanClass="skill_name" } var span_id = playerDivs[divIndex].querySelectorAll("span.player_id_span") var player_id = span_id[0].innerHTML var h2 = playerDivs[divIndex].querySelectorAll("h2.subheader.clearfix") var stx_class=h2[0].querySelectorAll("span.stx_scout"); if((stx_class.length===0)&&(skillsTable.length>0)){ var filas = skillsTable[tableIndex].querySelectorAll('tr'); var contSkill = 0 let maxIndex=11; if(window.sport==="hockey"){ contSkill=-1; maxIndex=10; } filas.forEach((fila, i) => { if ((contSkill>-1)&&(contSkill < maxIndex)) { var divContainer = fila.querySelector('div#container'); var hiddenDiv = divContainer.querySelectorAll('img.skill'); hiddenDiv[0].style.display = 'none'; var skillval = fila.querySelectorAll('td.skillval'); var skillValue = skillval[0].querySelectorAll("span") const valor = parseInt(skillValue[0].innerHTML, 10); // convertir a entero var dataToInsert = '<div class="skill" style="font-size:0;padding: 0 0 0 4px;">' for (let i = 0; i < valor; i++) { if (skillValue[0].classList.contains('maxed')) { dataToInsert += maxed_imgs.get('maxed_'+window.sport) } else { dataToInsert += maxed_imgs.get('unmaxed_'+window.sport) } } dataToInsert += +'</div>' divContainer.innerHTML += dataToInsert var primeraCelda = fila.querySelectorAll('td'); var skillName = primeraCelda[0].querySelectorAll("span."+spanClass) var idValue=skillName[0].innerHTML if(type==="market"){ var aux=skillName[0].querySelectorAll("span") idValue=aux[0].textContent } skillName[0].id = idValue + "_" + player_id } contSkill++ }); } GM_xmlhttpRequest({ method: 'GET', url: 'https://www.managerzone.com/ajax.php?p=players&sub=scout_report&pid=' + player_id + '&sport=' + window.sport, onload: function (responseDetailsScout) { let valores = []; const parser = new DOMParser(); const doc = parser.parseFromString(responseDetailsScout.responseText, 'text/html'); const aTags = doc.querySelectorAll('span.stars'); var index = 0 var hp_stars = 0 var lp_stars = 0 var ts_stars =0 aTags.forEach(tag => { const is = tag.querySelectorAll('i'); is.forEach(i => { if (index <= 3) { if (i.className == "fa fa-star fa-2x lit") { hp_stars++; } } if (index > 3 && index <= 7) { if (i.className == "fa fa-star fa-2x lit") { lp_stars++; } } if (index > 7) { if (i.className == "fa fa-star fa-2x lit") { ts_stars++ } } index++; }); }); var hp_value,hp_value1,lp_value,lp_value1 const uls = doc.querySelectorAll('ul'); index = 0; uls.forEach(ul => { var lis = ul.querySelectorAll('li'); if (lis.length > 2) { var stars_value = 0 var spanIndex = 0; var spans1 = lis[1].querySelectorAll('span') var spans2 = lis[2].querySelectorAll('span') if (spans1.length > 1) { spanIndex = 1 } if (index == 0) { stars_value = hp_stars hp_value=spans1[spanIndex].textContent hp_value1=spans2[spanIndex].textContent if(skillsTable.length>0){ document.getElementById(spans1[spanIndex].textContent + "_" + player_id).style.fontWeight = "bold" document.getElementById(spans2[spanIndex].textContent + "_" + player_id).style.fontWeight = "bold" } } else { stars_value = lp_stars } lp_value=spans1[spanIndex].textContent lp_value1=spans2[spanIndex].textContent if(skillsTable.length>0){ document.getElementById(spans1[spanIndex].textContent + "_" + player_id).style.color = colors.get("skc_" + stars_value) document.getElementById(spans2[spanIndex].textContent + "_" + player_id).style.color = colors.get("skc_" + stars_value) } index++ } } ); var as = h2[0].querySelectorAll("a.subheader") if((stx_class.length===0)&&(hp_value1!==undefined)){ if( window.stx_device=="mobile"){ h2[0].innerHTML+='<span class="stx_scout" style="font-size: smaller; white-space: nowrap;"> [H'+hp_stars+' '+hp_value+','+hp_value1+'] [L'+lp_stars+' '+lp_value+','+lp_value1+'] S'+ts_stars+'</span>' }else{ let newSpan = document.createElement('span'); newSpan.className="stx_scout" newSpan.style.whiteSpace = "nowrap"; newSpan.innerHTML = ' [H'+hp_stars+' '+hp_value+','+hp_value1+'] [L'+lp_stars+' '+lp_value+','+lp_value1+'] S'+ts_stars as[0].insertAdjacentElement('afterend',newSpan); } }else{ let newSpan = document.createElement('span'); newSpan.className="stx_scout" newSpan.style.display = "none"; as[0].insertAdjacentElement('afterend',newSpan); } } }); }); } function setSport(){ let sportCookie=getSportByMessenger() if(sportCookie===""){ sportCookie = getCookie("MZSPORT"); } if(sportCookie===""){ sportCookie=getSportByLink() } if(sportCookie===""){ sportCookie=getSportByScript() } window.sport = sportCookie; } function setDeviceFormat(){ if(!document.getElementById("deviceFormatStx")){ var script = document.createElement('script'); script.textContent = ` var newElemenDeviceSTX = document.createElement("input"); newElemenDeviceSTX.id= "deviceFormatStx"; newElemenDeviceSTX.type = "hidden"; newElemenDeviceSTX.value=window.device; document.body.appendChild(newElemenDeviceSTX); `; document.documentElement.appendChild(script); script.remove(); window.stx_device=document.getElementById("deviceFormatStx").value } } function getSportByMessenger() { if (document.getElementById("messenger")) { if ((document.getElementById("messenger").className === "soccer") || (document.getElementById("messenger").className === "hockey")) { return document.getElementById("messenger").className } } return "" } function getSportByLink(){ let element = document.getElementById("settings-wrapper"); if (element) { let firstLink = element.getElementsByTagName("a")[0]; if (firstLink) { if(firstLink.href.includes("soccer")){ return "hockey" }else{ return "soccer" } } } } function getSportByScript(){ const script = document.createElement('script'); script.textContent = ` let newElement = document.createElement("input"); newElement.id= "stx_sport"; newElement.type = "hidden"; newElement.value=window.ajaxSport; let body = document.body; body.appendChild(newElement); `; document.documentElement.appendChild(script); script.remove(); return document.getElementById("stx_sport").value } function getCookie(nombre) { let regex = new RegExp("(?:(?:^|.*;\\s*)" + nombre + "\\s*\\=\\s*([^;]*).*$)|^.*$"); let valorCookie = document.cookie.replace(regex, "$1"); return decodeURIComponent(valorCookie); } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址