您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Commonly used functions
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/447371/1066681/CommonlyMainFunctions.js
- let isDebug = true;
- let os = function () {
- var ua = navigator.userAgent, //获取浏览器UA
- isWindowsPhone = /(?:Windows Phone)/.test(ua),
- isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
- isAndroid = /(?:Android)/.test(ua),
- isFireFox = /(?:Firefox)/.test(ua),
- isChrome = /(?:Chrome|CriOS)/.test(ua),
- isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),
- isPhone = /(?:iPhone)/.test(ua) && !isTablet,
- isPc = !isPhone && !isAndroid && !isSymbian;
- return {
- isTablet: isTablet,
- isPhone: isPhone,
- isAndroid: isAndroid,
- isPc: isPc
- };
- }();
- function Get(link) {
- return new Promise(function (resolve) {
- $.get(link, data => {
- resolve(data);
- });
- });
- }
- //日志
- function log() {
- if (isDebug) {
- console.log.apply(this, arguments);
- }
- };
- function err() {
- if (isDebug) {
- console.error.apply(this, arguments);
- }
- }
- function addStyle(statement = null, href = null) {
- let mountElement = document.getElementsByTagName('head')[0];
- if (mountElement) {
- let style = null;
- if (href !== null) {
- style = document.createElement('link');
- style.setAttribute('href', href);
- style.setAttribute('rel', 'stylesheet');
- } else if (statement !== null) {
- style = document.createElement('style');
- style.setAttribute('type', 'text/css');
- style.textContent = statement;
- }
- return new Promise((resolve, reject) => {
- try {
- mountElement.appendChild(style);
- style.onerror = (e) => reject(e);
- style.onload = () => {
- resolve();
- }
- } catch (error) {
- reject(error);
- }
- });
- }
- return null;
- }
- function addScript(statement = null, src = null, isModule = false) {
- let mountElement = document.getElementsByTagName('head')[0];
- if (mountElement) {
- let script = document.createElement("script");
- if (src !== null) {
- script.src = src;
- } else if (statement !== null) {
- script.textContent = statement;
- if (isModule) script.type = "module";
- }
- return new Promise((resolve, reject) => {
- try {
- mountElement.appendChild(script);
- script.onerror = (e) => reject(e);
- script.onload = () => {
- resolve();
- }
- } catch (error) {
- reject(error);
- }
- });
- }
- return null;
- }
- //判断变量是否为空 空返回TRUE 否则返回 FALSE
- function isEmpty(param){
- if(param){
- var param_type = typeof(param);
- if(param_type == 'object'){
- //要判断的是【对象】或【数组】或【null】等
- if(typeof(param.length) == 'undefined'){
- if(JSON.stringify(param) == "{}"){
- return true;//空值,空对象
- }
- }else if(param.length == 0){
- return true;//空值,空数组
- }
- }else if(param_type == 'string'){
- //如果要过滤空格等字符
- var new_param = param.trim();
- if(new_param.length == 0){
- //空值,例如:带有空格的字符串" "。
- return true;
- }
- }else if(param_type == 'boolean'){
- if(!param){
- return true;
- }
- }else if(param_type== 'number'){
- if(!param){
- return true;
- }
- }
- return false;//非空值
- }else{
- //空值,例如:
- //(1)null
- //(2)可能使用了js的内置的名称,例如:var name=[],这个打印类型是字符串类型。
- //(3)空字符串''、""。
- //(4)数字0、00等,如果可以只输入0,则需要另外判断。
- return true;
- }
- }
- //自定义过滤函数
- function trimSpace(array) {
- for (var i = 0; i < array.length; i++) {
- //这里为过滤的值
- if (array[i] == "" || array[i] == null || typeof (array[i]) == "undefined") {
- array.splice(i, 1);
- i = i - 1;
- }
- }
- return array;
- }