您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
No ads, faster, download options, no viruses, html5
// ==UserScript== // @name KissAnime RapidVideo Custom Player // @namespace http://tampermonkey.net/ // @version 0.2 // @description No ads, faster, download options, no viruses, html5 // @author You // @match http://kissanime.ru/Anime/*/* // @require https://code.jquery.com/jquery-1.12.4.min.js // @require https://cdn.rawgit.com/Eltion/KissAnime-RapidVideo/112df41f394b4ca5924d9d4e11b77cf6cf7bda93/player1.js // @grant GM_xmlhttpRequest // ==/UserScript== var current = 0; var UrlQ; var bestQ = ""; (function() { var iframe = $("#divContentVideo").find("iframe").attr("src"); if(iframe.includes("rapidvideo")){ $("#divContentVideo").html(""); $('head').append('<link rel="stylesheet" href="//releases.flowplayer.org/7.2.1/skin/skin.css">'); $('#divContentVideo').html('<div id="player"></div>'); $("#divQuality").html("<select id='quality'></select>"); $("#divQuality").css({"display":"inline-block"}); $("#quality").on("change",function(){ var val = $(this).val(); change(val); }); rapidvideoGetQualities(iframe); flowplayer(function (api, root) { var fsbutton = root.querySelector(".fp-fullscreen"); api.on("ready", function () { root.querySelector(".fp-controls").appendChild(fsbutton); }); }); } })(); function rapidvideoGetQualities(url){ var k = ""; var re = new RegExp(url+"&q=\\d*p","g"); GM_xmlhttpRequest({ method: "GET", url: ""+url, synchronous: true, onload: function(response) { var e = response.responseText.match(re); if (e === undefined || e === null) { }else{ UrlQ = e; rapidvideo(e[0]); } } }); } function rapidvideo(url){ if(current >= UrlQ.length ){ setPlayer(bestQ); $("#quality").find("option").last().attr("selected",''); }else{ GM_xmlhttpRequest({ method: "GET", url: ""+url, synchronous: true, onload: function(response) { var e = response.responseText.split('<source src="')[1].split('"')[0]; if (e === undefined || e === null) { console.log(response.responseText); }else{ var label = response.responseText.match(/title="\d*p"/g)[0].split('"')[1]; bestQ = e; $("#quality").append("<option value='"+e+"'>"+label+"</option>"); current++; rapidvideo(UrlQ[current]); } } }); } } function change(val){ flowplayer(0).load(val); $("#Download").attr("href",val); } function setPlayer(val){ flowplayer("#player", { clip: { sources: [ { type: "video/mp4", src: val } ] } }); $("#Download").attr("href",val); }