您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
JavDB 工具箱:1. 添加搜索在线观看资源按钮 2. 添加到 JavLibrary 等站点跳转按钮
当前为
// ==UserScript== // @name JavDB Toolbox // @namespace http://tampermonkey.net/ // @version 0.1 // @description JavDB 工具箱:1. 添加搜索在线观看资源按钮 2. 添加到 JavLibrary 等站点跳转按钮 // @author naughtyEvenstar // @include /^https:\/\/javdb[0-9]*.com\/v\/*/ // @icon https://javdb.com/favicon-32x32.png // @grant none // @license MIT // ==/UserScript== (function () { "use strict"; const openWindowWithPost = (url, data) => { var form = document.createElement("form"); form.target = "_blank"; form.method = "POST"; form.action = url; form.style.display = "none"; for (var key in data) { var input = document.createElement("input"); input.type = "hidden"; input.name = key; input.value = data[key]; form.appendChild(input); } document.body.appendChild(form); form.submit(); document.body.removeChild(form); }; const tmpl = ` <div class="panel-block generated"> <div class="columns"> <div class="column"> <div class="buttons are-small review-buttons" /> </div> </div> </div>`; [...document.querySelectorAll(".movie-panel-info div.panel-block")] .pop() .insertAdjacentHTML("afterend", tmpl); const buttonRowEle = document.querySelector(".generated .review-buttons"); const registerButton = (text, onClick, hint) => { const btnEle = document.createElement("a"); btnEle.className = "button is-info is-outlined"; btnEle.addEventListener("click", onClick); btnEle.textContent = text; buttonRowEle.appendChild(btnEle); if (hint) btnEle.title = hint; return btnEle; }; const movieCode = document.querySelector( ".panel-block.first-block > span" ).textContent; const movieTitle = document.querySelector(".title.is-4 > strong").textContent; const isFC2 = movieCode.startsWith("FC2"); const isUncensored = isFC2 || movieTitle.includes("無碼"); const searchType = isUncensored ? "uncensored" : "censored"; const searchKeyword = isFC2 ? movieCode.slice(4) : movieCode; const btn7mmtv = registerButton( "🔎 7MMTV", () => { openWindowWithPost( "https://7mmtv.tv/zh/searchform_search/all/index.html", { search_keyword: searchKeyword, search_type: searchType, op: "search", } ); }, "适合搜索骑兵和fc2" ); const btnAvgle = registerButton("🔎 Avgle", () => window.open( `https://avgle.com/search/videos?search_query=${searchKeyword}&search_type=videos` ) ); const btnJavBigo = registerButton("🔎 JavBigo", () => window.open(`https://javbigo.com/?s=${searchKeyword}`) ); const btnJavLib = registerButton("🔎 JavLibrary", () => window.open( `https://www.javlibrary.com/cn/vl_searchbyid.php?keyword=${searchKeyword}` ) ); })();