您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
ツイッターを見る時間を制限して時間を有効に使おう
// ==UserScript== // @name Limit Twitter // @name:en Limit Twitter // @namespace https://twitter.com/seiun_kunisaki // @version 1.2.4 // @description ツイッターを見る時間を制限して時間を有効に使おう // @description:en Limit the time to watching Twitter TL and List, and use your time effectively. // @author @seiun_kunisaki // @match https://twitter.com/* // @match https://mobile.twitter.com/* // @run-at document-start // @grant none // ==/UserScript== (function() { 'use strict'; if (document.readyState == 'interactive') return; // tampermonkey F5 measure if (!location.hostname.match(/^(mobile\.)?twitter\.com$/)) return; window.addEventListener('DOMContentLoaded', function(){ /* == User Setting Start == */ var remainSeconds = 180; var redirectUrl = 'https://www.hellowork.go.jp/'; // introducing your work :) var isTitlemode = false; // apply to show countdown in title mode. true or false var bgImageUrl = ''; // background image url /* == User Setting End == */ var baseStr = {'ja': '残り:%d 秒', 'zh': '剩下:%d 秒', 'id': '%d detik tersisa', 'pt': '%d segundos restantes', 'de': 'Noch: %d Sekunden', 'es': '%d segundos restantes', 'nl': '%d seconden resterend', 'fr': '%d secondes restantes', 'it': '%d secondi rimanenti', 'ko': '나머지:%d 초', 'en': 'remaining:%d s', 'default': 'remaining:%d s'}; var htmlLang = document.documentElement.getAttribute('lang'); if (!baseStr[htmlLang]) htmlLang = 'default'; var originalStr = {}; var divElement = null; var timerId = setInterval(countDown, 1000); document.body.style.backgroundImage = "url(" + bgImageUrl + ")"; function countDown() { if (!isTitlemode) { // normal mode if (divElement === null) addCountElement(); if (!isCountdownpage()) return; setCountStr(); } else { // title mode if (!isCountdownpage()) return; var h2s = document.getElementsByTagName('h2'); if (h2s && !originalStr[location.pathname]) { originalStr[location.pathname] = h2s[1].innerHTML; // <h2>Home</h2> is 2nd h2 tag } h2s[1].innerHTML = originalStr[location.pathname] + " " + baseStr[htmlLang].replace('%d', remainSeconds); } if (remainSeconds === 0) { clearInterval(timerId); document.location.href = redirectUrl; return; } remainSeconds--; } function isCountdownpage() { divElement.style.visibility = 'visible'; if (location.pathname === '/home' || (location.pathname.match(/\/lists\/[^\/]+\/?$/))) { // list page return true; } if (location.pathname === '/compose/tweet' || (location.pathname.match(/^\/settings(\/.*)?$/)) || (location.pathname.match(/^\/i\/display$/)) || (location.pathname.match(/^\/intent\//)) || (location.pathname.match(/^\/.*\/status\/.*\/photo\//)) || (location.pathname.match(/^\/messages(\/.*)?$/))) { divElement.style.visibility = 'hidden'; } return false; } function addCountElement() { divElement = document.createElement('div'); divElement.style.position = 'fixed'; divElement.style.left = '13px'; divElement.style.bottom = '73px'; divElement.style.width = '70%'; divElement.style.maxWidth = '500px'; if (window.innerWidth >= 500) { divElement.style.width = '570px'; divElement.style.maxWidth = '70%'; divElement.style.left = '20%'; divElement.style.bottom = '23px'; } divElement.style.height = '50px'; divElement.style.border = 'solid 4px black'; divElement.style.borderRadius = '27px'; divElement.style.background = '#FFFFFF'; divElement.style.overflow = 'hidden'; divElement.style.zIndex = 10; divElement.style.fontSize = '30px'; divElement.style.textAlign = 'center'; divElement.style.verticalAlign = 'center'; document.body.appendChild(divElement); setCountStr(); } function setCountStr() { divElement.innerHTML = baseStr[htmlLang].replace('%d', remainSeconds); } }); })();