您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
cytubeに独自のURLチェックを追加します
当前为
// ==UserScript== // @name cytube_bad_urls // @namespace https://cytube.xyz/ // @version 0.3 // @description cytubeに独自のURLチェックを追加します // @author utubo // @match *://cytube.xyz/* // @grant none // ==/UserScript== (window.unsafeWindow || window).eval(` // チャンネルのJSに設定するときはこの行(と最後の行)を削除 (function() { // 設定 ------------------------------------ var BAD_URLS = [ { startsWith:'https://www.nicovideo.jp/watch/nm', msg:'ニコニコ動画の動画IDが"nm~~"で始まるURLは未対応です。' }, { startsWith:'URLがこれで始まってたらNG', msg:'サンプル1' }, { regex:/URLがこの正規表現にマッチしたらNG/, msg:'サンプル2' } ]; // 本体 ------------------------------------ // 2重起動されたら前のはクリア var win = (window.unsafeWindow || window); if (win.BAD_URLS_HANDLER) { win.document.body.removeEventListener(win.BAD_URLS_HANDLER); } // ここからメイン var toHttps = url => url.replace('http://', 'https://'); win.BAD_URLS_HANDLER = e => { if (!e.target) return; if (e.target.id !== 'queue_next' && e.target.id !== 'queue_end') return; var url = toHttps(document.getElementById('mediaurl').value); for (var badURL of BAD_URLS) { if (badURL.startsWith && url.startsWith(toHttps(badURL.startsWith)) || badURL.regex && url.match(badURL.regex)) { queueMessage({ msg: badURL.msg }, 'alert-danger'); e.preventDefault(); e.stopPropagation(); return false; } } }; win.document.body.addEventListener('click', win.BAD_URLS_HANDLER, true); })(); `); // チャンネルのJSに設定するときはこの行も削除