您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
to reduce repetition in creating scripts for Tampermonkey support
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/23115/156081/Tampermonkey%20Support%20Library.js
- var tm = {
- addGlobalStyle: function(css) {
- var head, style;
- head = document.getElementsByTagName('head')[0];
- if (!head) { return; }
- style = document.createElement('style');
- style.type = 'text/css';
- style.innerHTML = css;
- head.appendChild(style);
- },
- log: function(msg) {
- console.log('Tampermonkey: ' + msg);
- },
- selectText: function (targetClass) {
- var textToCopy, range;
- try {
- if (document.selection) {
- range = document.body.createTextRange();
- range.moveToElementText(document.getElementsByClassName(targetClass)[0]);
- range.select();
- } else if (window.getSelection) {
- range = document.createRange();
- range.selectNode(document.getElementsByClassName(targetClass)[0]);
- window.getSelection().addRange(range);
- }
- } catch (err) {
- tm.log('Failed to select text');
- }
- },
- sysFriendly: function(el) {
- var text = $(el).text();
- $(el).text(text.replace(/\/|\:|\<|\>|\\|\||\*|\?/g, '-'));
- },
- ping: function (ip, callback) { // via http://jsfiddle.net/GSSCD/203/
- if (!this.inUse) {
- this.status = 'unchecked';
- this.inUse = true;
- this.callback = callback;
- this.ip = ip;
- var _that = this;
- this.img = new Image();
- this.img.onload = function () {
- _that.inUse = false;
- _that.callback('responded');
- };
- this.img.onerror = function (e) {
- if (_that.inUse) {
- _that.inUse = false;
- _that.callback('error', e);
- }
- };
- this.start = new Date().getTime();
- this.img.src = "http://" + ip;
- this.timer = setTimeout(function () {
- if (_that.inUse) {
- _that.inUse = false;
- _that.callback('timeout');
- }
- }, 1500);
- }
- },
- isTagIn: function (targetString, tags) {
- var isFound = false;
- _.each(tags, function scanTarget (tag) {
- if (targetString.toLowerCase().indexOf(tag.toLowerCase()) > -1) {
- isFound = true;
- }
- });
- return isFound;
- },
- copyTextToClipboard: function (text) {
- var copyFrom = document.createElement("textarea");
- copyFrom.textContent = text;
- var body = document.getElementsByTagName('body')[0];
- body.appendChild(copyFrom);
- copyFrom.select();
- document.execCommand('copy');
- body.removeChild(copyFrom);
- },
- waitFor: function (options) {
- var awaitThis = options.condition,
- doThis = options.resolution,
- intervalSpeed = options.interval ? options.interval : 100,
- maxTries = options.attempts ? options.attempts : 100,
- currentTry = 0;
- console.log(intervalSpeed + ' | ' + maxTries);
- stateLoading = function (awaitCondition) {
- if( !awaitCondition ) {
- currentTry++;
- if (currentTry < maxTries) {
- window.setTimeout(stateLoading(awaitCondition), intervalSpeed); /* this checks the flag every intervalSpeed milliseconds*/
- } else {
- console.log('final try');
- }
- } else {
- console.log('good');
- doThis();
- }
- };
- stateLoading(awaitThis);
- }
- };