返回首頁 

Greasy Fork is available in English.

简单动漫增强支持

简单动漫增强支持,包括:搜索位置提供指定类型资源搜索功能、磁链链接的tr属性修复为正确url地址、磁力链接添加dn属性(即display name显示名称)的支持

// ==UserScript==// @name         简单动漫增强支持// @namespace    https://greasyfork.org/zh-CN/users/390742-fjqingyou// @version      0.1.6// @description  简单动漫增强支持,包括:搜索位置提供指定类型资源搜索功能、磁链链接的tr属性修复为正确url地址、磁力链接添加dn属性(即display name显示名称)的支持// @author       fjqingyou// @match        *://www.36dm.club/*// @match        *://www.36dm.com/*// @run-at       document-start// @grant        none// ==/UserScript==(function() {'use strict';// Your code here...function $id(id){return document.getElementById(id);}function getQueryVariable(variable){var query = window.location.search.substring(1);var vars = query.split("&");for (var i=0;i<vars.length;i++) {var pair = vars[i].split("=");if(pair[0] == variable){return pair[1];}}return(false);}/*** 覆盖掉原始搜索*/function overrideOriginSearch(){/*** 覆盖掉原始搜索*/window.doSearch = function() {var topsearch = $id("topsearch");if(topsearch){var keyword = topsearch.value;if (!keyword || "请输入您要搜索的资源名称" == keyword) {Window.alert("请输入您要搜索的资源名称");return false;}var url = "/search.php?keyword=" + encodeURIComponent(keyword);var sort_id = $id("sort_id");if(sort_id !== null){url += "&sort_id=" + sort_id.value;}//执行跳转window.location.href = url;}};}/*** 创建搜索类型的 dom 对象*/function createSearchTypeDom(){//环境var urlSort_id = getQueryVariable("sort_id");//创建下拉框var sort_id = document.createElement("select");//指定下拉框属性sort_id.style = "float: left; height: 25px; margin-right: 5px;";sort_id.id = "sort_id";sort_id.name = "sort_id";//选项元素项列表var arrItems =[[0, "全部"],[2, "动画"],[7, "  新番连载"],[8, "  动画合集", true],[14, "  英译动画"],[3, "漫画"],[12, "  港台漫画"],[13, "  原版日漫"],[16, "  英译漫画"],[4, "动漫音乐"],[15, "  音乐视频"],[5, "RAW片源"],[20, "  日剧"],[21, "  特摄片"],[22, "  原版日剧"],[23, "  英译日剧"],[18, "游戏"],[6, "其他资源"],[17, "  写真集"],[19, "  图集"]];//遍历生成 option 元素for(var i = 0 ; i < arrItems.length; i++){var item = arrItems[i];var option = document.createElement("option");option.value = item[0];option.text = item[1];//默认选中项if(!urlSort_id){//如果没有这个参数if(item[2]){//如果有默认指定这个的需求option.selected = true;//那么才指定}}else{//如果存在这个参数option.selected = urlSort_id == option.value;//那么要求一致}sort_id.appendChild(option);}return sort_id;}/*** 添加搜索类型选项*/function addSearchTypeOption(){//环境var topsearch = $id("topsearch");if(topsearch === null){//如果环境还未准备就绪//延迟一会儿再尝试setTimeout(addSearchTypeOption, 100);}else {var sort_id = $id("sort_id");if(sort_id === null){//只有确实还没有这个元素才有必要继续//获取父节点var topsearchParent = topsearch.parentElement;//扩大这个元素的宽度,让它不被换行topsearchParent.style.width = "610px";//创建搜索类型节点sort_id = createSearchTypeDom();//插入搜索类型topsearchParent.insertBefore(sort_id, topsearch);//覆盖掉原始搜索overrideOriginSearch();}}}/*** 修复磁力链接的 tr 参数*/function fixMagnetTr(magnetDom){if(magnetDom){var url = magnetDom.href;var index = url.indexOf("&tr=http://");if(index > -1){var strLeft = url.substr(0, index + 4);var trUrl = url.substr(index + 4);magnetDom.href = strLeft + encodeURIComponent(trUrl);}}}/*** 添加磁力链接的显示名称*/function addMagnetDisplayName(magnetDom){if(magnetDom && !magnetDom.href.indexOf("&dn=") > -1){var title = document.title;for(var i = 0 ; i < 2; i++){var index = title.lastIndexOf(" - ");if(index > -1){title = title.substr(0, index);}}if(title.length > 0){magnetDom.href += "&dn=" + encodeURIComponent(title);}}}/*** 增强 show 页面*/function enhanceShowPage(){if(document.location.href.indexOf("/show-") > -1){var magnetDom = $id("magnet");if(magnetDom === null){//如果环境还未准备就绪//延迟一会儿再尝试setTimeout(enhanceShowPage, 100);}else{//修复磁力链接的 trfixMagnetTr(magnetDom);//添加磁力链接的显示名称addMagnetDisplayName(magnetDom);}}}/*** 初始化*/function init(){//添加搜索类型选项addSearchTypeOption();//增强 show 页面enhanceShowPage();}//执行初始化init();})();