// ==UserScript== // @name PPT.cc 自動送密碼 // @namespace http://tampermonkey.net/ // @version 0.2 // @description try to take over the world! // @author You // @match https://ppt.cc/* // @include https://www.dcard.tw/f/sex* // @grant GM_setValue //@grant GM_getValue //@require https://code.jquery.com/jquery-3.3.1.min.js //@require https://cdnjs.cloudflare.com/ajax/libs/sticky-js/1.2.0/sticky.min.js // @downloadURL none // ==/UserScript== (function() { 'use strict'; if(window.location.href.indexOf("ppt.cc")){ autoSendPassword(); } //如果是dcard,增加一個輸入密碼的浮動視窗 if(window.location.href.indexOf("dcard.tw")){ } })(); function autoSendPassword(){ // 增加一個post request的語法 $.extend( { redirectPost: function(location, args) { var form = ''; $.each( args, function( key, value ) { form += ''; }); $('
').appendTo('body').submit(); } }); //取得queryString,密碼和是否已經發送 var password = getParameterByName("password"); var isSend = getParameterByName("send"); var prevSendValue = GM_getValue("prevSendValue");//用來防止輸入密碼失敗的無窮迴圈 var cleanUrl = window.location.href.split('?')[0];//取得目前的網址 console.log("目前的key"+cleanUrl+password+" prevSendValue:"+prevSendValue); if(password && !isSend && cleanUrl+password != prevSendValue) { GM_setValue("prevSendValue", cleanUrl+password); $.redirectPost(window.location.href+"&send=1", { t:2,p:password,ga:1,url:cleanUrl,cleanUrl:"我要通關" } ); } //如果密碼輸入正確,清掉prevSendValue if(isSend && ($("a:contains('開新視窗')")|| $("a:contains('全螢幕播放')"))){ GM_setValue("prevSendValue", ""); } } function getParameterByName(name) { var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search); return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); }