您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
r34fix
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greasyfork.org/scripts/502404/1421028/r34init.js
// ==UserScript== // @name r34init // @namespace http://tampermonkey.net/ // @version 2024-08-01 // @description r34fix // @author You // @grant none // ==/UserScript== function initKVSPlayTrailer() { console.log('init start') var n, r, c, e = /iphone|ipad|Android|webOS|iPod|BlackBerry|Windows Phone/gi.test(navigator.appVersion), o = 0; function l(e) { var i, s = e, e = s.find("video"), o = s.find("img"); e.length ? (e.get(0).play(), o.hide()) : ($(".js-swipe").hide(), i = $('<div class="preview-progress"></div>'), s.append(i), setTimeout(function() { i.addClass("is-full") }), n = setTimeout(function() { var e = s.attr("data-preview") , t = (s.attr("data-subtitles"), $('<video autoplay loop muted playsinline src="' + e + '"></video>')); function a() { s.append(t), t.get(0).play(), o.hide(), i.remove() } r = setTimeout(function() { 0 < t.get(0).readyState ? a() : c = setInterval(function() { 0 < t.get(0).readyState && (a(), clearInterval(c)) }, 0) }, 0) }, 0)) } e ? $("body").find("[data-preview]").swipe({ swipeLeft: function(e, t, a, i, s) { clearTimeout(n), clearTimeout(r), clearInterval(c); $(this).find("img"); o++, $("[data-preview]").each(function(e) { var t = $(this) , a = t.find("video"); a.length && (a.get(0).remove(), $("img").show()), t.find(".preview-progress").remove() }), 1 < o ? ($(this).find("video").eq(0).length && ($(this).find("video").get(0).remove(), $("img").show()), o = 0) : l($(this)) }, swipeRight: function(e, t, a, i, s) { clearTimeout(n), clearTimeout(r), clearInterval(c); $(this).find("img"); o++, $("[data-preview]").each(function(e) { var t = $(this) , a = t.find("video"); a.length && (a.get(0).remove(), $("img").show()), t.find(".preview-progress").remove() }), 1 < o ? ($(this).find("video").eq(0).length && ($(this).find("video").get(0).remove(), $("img").show()), o = 0) : l($(this)) }, preventDefaultEvents: !1, threshold: 80 }) : $("body").on("mouseenter", "[data-preview]", function() { l($(this)) }).on("mouseleave", "[data-preview]", function() { clearTimeout(n), clearTimeout(r), clearInterval(c); var e = $(this); e.find("img").show(); var t = e.find("video"); t.length && t.get(0).remove(), e.find(".preview-progress").remove() }) }