您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
mark great episodes in bgm
// ==UserScript== // @name bgm神回标记 // @namespace http://tampermonkey.net/ // @description mark great episodes in bgm // @author xdy // @include /https?:\/\/(bgm\.tv|bangumi\.tv|chii\.in)/subject/\d+$ // @include /https?:\/\/(bgm\.tv|bangumi\.tv|chii\.in)/index/\d+$ // @version 0.0.1 // @grant GM_setValue // @grant GM_getValue // @grant GM_addStyle // ==/UserScript== var islogin = !$("div").is(".guest"); if(!islogin) { return; } function $a(q) { return document.querySelectorAll(q); } var isindex = location.pathname.indexOf('index', 0); var index = GM_getValue("index", 'no'); if(isindex != -1) { indexMark(); return; } var has_ep = document.querySelector('.load-epinfo'); var domain = document.location.protocol +'//'+ document.location.hostname; var index_url = domain +'/index/'+ index; var ep_strs=[]; var ep_del_url = []; var formhash; if(has_ep && index != 'no'){ mycss = '.marked_Btn {background-color: #FFFF00;color: #FFF;border: 1px solid #1175a8;} a.marked_Btn:hover {color:#333;border-top:2px solid #00A8FF}'; GM_addStyle(mycss); $.get(index_url, function(res){ let ep_str = res.match(/item_ep\d+/g); if(ep_str==null || ep_str.length == 0) return; for(let i=0;i<ep_str.length;i++){ ep_strs.push(ep_str[i].substr(7)); } let del_str = res.match(/id="related_ep.*?class/g); //console.log(del_str); for(let i=0;i<del_str.length;i++){ pos0 = del_str[i].indexOf('href='); pos1 = del_str[i].indexOf('class'); //console.log(del_str[i].substring(pos0+6, pos1-2)); ep_del_url.push(domain+del_str[i].substring(pos0+6, pos1-2)); } hash_str = res.match(/name="formhash" value=".*?"/); formhash = hash_str[0].substr(-9,8); //console.log(formhash); //console.log(ep_strs); insert_function(formhash, index_url); mark_episode(ep_strs); }); } function indexMark(){ let tip = $('div.grp_box'); console.log(tip); let t = document.createElement('a'); t.href = "javascript:void(0);"; t.className = 'l thickbox'; //var url = location.pathname; let url = location.pathname.split('/'); curr_index = url[url.length-1]; //console.log(curr_index, index); if(index == 'no' || index != curr_index){ t.text = ' / 指定目录'; t.onclick = function(){GM_setValue('index', curr_index);location.reload();}; } else{ t.text = ' / 取消指定'; t.onclick = function(){GM_setValue('index', 'no');location.reload();}; } tip.append(t); } function insert_function(formhash, url){ mark_ep_func = 'function mark_ep(args){args = args.split(",");$.post(args[1]+"/add_related",{"add_related":args[0],"cat":3,"formhash":args[2],"submit":"添加章节关联"}, function(res){location.reload()});}'; del_ep_func = 'function del_ep(url){;$.get(url, function(res){location.reload()});}'; script = $('<script>'+mark_ep_func+del_ep_func+'</script>'); $('body').append(script); } function mark_episode(marked_ep){ var eps = $a('.prg_popup'); for(var i in eps){ //var l = ep.childNodes.length; //console.log(eps[i]); var ep_id; if(eps[i].id != undefined) ep_id = eps[i].id.substr(8); else continue; var l = eps[i].children.length; var ep_pos = $.inArray(ep_id, marked_ep); var ismarked = $.inArray(ep_id, marked_ep) >= 0; if(ismarked){ var prg = $('#prg_' + ep_id); prg.attr("class", "marked_Btn"); } var button; if(ismarked) button = '<a href="javascript:void(0);" class="1 ep_status" onclick=del_ep("' +ep_del_url[ep_pos]+ '")>撤销标记</a>'; else button = '<a href="javascript:void(0);" class="1 ep_status" onclick=mark_ep("' +ep_id+','+index_url+','+formhash+ '")>标记神回</a>'; if(l == 2){ var eptool = document.querySelector('div#prginfo_' + ep_id + ' div.epStatusTool'); eptool.innerHTML = eptool.innerHTML + button; } else if(l == 1){ var tool = '<div class="epStatusTool">'+ button + '</div>'; var prginfo = document.querySelector('#prginfo_' + ep_id); prginfo.innerHTML = tool + prginfo.innerHTML; } } }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址