您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
我的工具
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/435697/1235901/my.js
- // ==UserScript==
- // @name my
- // @description 我的工具
- // @grant unsafeWindow
- // ==/UserScript==
- (function(win){
- const e=document.documentElement.firstElementChild;
- let z;
- win.my=new class {
- constructor(){
- if(e.tagName==='Z') z=this.zone=e;
- else {
- z=this.zone=this.before('z',e,'',`class`,'rwf');
- this.addStyle(`my-btns{display:block;z-index:9195129;position:fixed;right: 0;bottom: 0;height: min-content;}.my-btn{user-select: none}`,'my-btns');
- win.cl=win.console.log;win.al=win.alert;
- }
- }
- addStyle(css,className='rwf'){//depend:after,zone
- return this.append('style',z,css,`class`,className);
- }
- append(tag,dom,content){
- if(!tag) return;
- const son=typeof tag==='string'?document.createElement(tag):tag instanceof EventTarget?tag:0;
- let len=arguments.length;
- if(dom instanceof EventTarget)dom.append(son);
- if(content)son.append(content);
- while(len>3){
- son.setAttribute([arguments[len-2]],arguments[len-1]);len-=2;
- }return son;
- }//my.append('tag',document.body,'content','idk','true','data-s')
- after(tag,dom,content){
- if(!tag) return;
- const bro=typeof tag==='string'?document.createElement(tag):tag instanceof EventTarget?tag:0;
- let len=arguments.length;
- if(dom instanceof EventTarget)dom.after(bro);
- if(content)bro.append(content);
- while(len>3){
- bro.setAttribute([arguments[len-2]],arguments[len-1]);len-=2;
- }return bro;
- }//my.after('div',document.body,'','suck','1','dick',000)
- before(tag,dom,content){
- if(!tag) return;
- const bro=typeof tag==='string'?
- document.createElement(tag):tag instanceof EventTarget?
- tag:0;
- let len=arguments.length;
- if(dom instanceof EventTarget)dom.before(bro);
- if(content)bro.append(content);
- while(len>3){
- bro.setAttribute([arguments[len-2]],arguments[len-1]);len-=2;
- }return bro;
- }// my.before('div',document.head,'','suck','1','dick')
- eods(){//enable or disable style in my.zone
- z.querySelectorAll('style').forEach(e=>e.type==='0'?e.type='':e.type=0);
- }
- sohe(...args){//show or hide elements
- args.forEach(e=>{
- if(typeof e!=="string") e.style.display==='none'?e.style.display='initial':e.style.display='none';
- else document.querySelectorAll(e).forEach(e=>e.style.display==='none'?e.style.display='initial':e.style.display='none');
- });
- }
- s2d(seconds){//seconds2date
- const date=new Date(seconds),year=date.getFullYear(),month=date.getMonth()+1,day=date.getDate(),
- hour=date.getHours(),minute=date.getMinutes(),second=date.getSeconds(),milliseconds=date.getMilliseconds(),currentTime=year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second+":"+milliseconds;
- return currentTime;
- }//my.s2d(new Date().getTime())
- tieba(uname,pwd){//login
- document.getElementById('TANGRAM__PSP_5__footerULoginBtn').click();
- document.getElementById('TANGRAM__PSP_5__uname').outerHTML+='';
- document.getElementById('TANGRAM__PSP_5__pwd').outerHTML+='';
- document.getElementById('TANGRAM__PSP_5__uname').value=uname;
- document.getElementById('TANGRAM__PSP_5__pwd').value=pwd;
- return document.getElementById('TANGRAM__PSP_5__submit').click();
- }
- fixTitle(){//stop title be changed
- Object.defineProperty(document,"title",{
- writable:false
- });
- }
- addBtns(...params){//depend:addStyle,append
- const myBtns=z.querySelector('my-btns')||this.append('my-btns',z,'',`class`,'rwf'),btns=[],l=params.length;
- for(let i=0;i<l;i+=2){
- const btn= params[i]==''?this.append('button',myBtns,params[i+1].name+'|','class','my-btn'):this.append('button',myBtns,params[i]+'|','class','my-btn');
- btn.addEventListener('click',params[i+1]);
- btns[btns.length]=btn;
- }return btns;
- }//my.addBtns('',()=>{},"func1",e=>{confirm(e.target.id)},'f2',function(e){prompt(e.target.outerHTML)},function test(e){return 1})
- addAs(...args){//depend:addStyle,append
- const myBtns=z.querySelector('my-btns')||this.append('my-btns',z,'',`class`,'rwf');
- for(let i=0;i<args.length;i+=2){
- this.append('a',myBtns,args[i]+'|',`href`,args[i+1]);
- }
- }//my.addAs("bilibili","https://www.bilibili.com/","baidu","https://www.baidu.com/")
- }()
- })(unsafeWindow);