您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Shows a timer on any website to track time spent, with hide/show toggle
当前为
- // ==UserScript==
- // @name Website Usage Timer
- // @namespace http://tampermonkey.net/
- // @version 1.4
- // @description Shows a timer on any website to track time spent, with hide/show toggle
- // @author Drewby123
- // @match *://*/*
- // @grant none
- // @license MIT
- // ==/UserScript==
- (function () {
- 'use strict';
- // Prevent script from running inside iframes
- if (window.top !== window.self) return;
- // Create the container
- const container = document.createElement('div');
- container.style.position = 'fixed';
- container.style.bottom = '20px';
- container.style.right = '20px';
- container.style.zIndex = '9999';
- container.style.display = 'flex';
- container.style.flexDirection = 'column';
- container.style.alignItems = 'flex-end';
- container.style.gap = '6px';
- // Create the timer box
- const timerBox = document.createElement('div');
- timerBox.id = 'site-timer-overlay';
- timerBox.style.background = 'rgba(0, 0, 0, 0.7)';
- timerBox.style.color = '#fff';
- timerBox.style.padding = '10px 14px';
- timerBox.style.borderRadius = '10px';
- timerBox.style.fontFamily = 'monospace';
- timerBox.style.fontSize = '14px';
- timerBox.style.boxShadow = '0 2px 8px rgba(0,0,0,0.5)';
- timerBox.textContent = 'Time on site: 00:00';
- // Create the toggle button
- const toggleBtn = document.createElement('button');
- toggleBtn.textContent = '⨉';
- toggleBtn.style.background = '#000';
- toggleBtn.style.border = '1px solid #fff';
- toggleBtn.style.color = '#fff';
- toggleBtn.style.cursor = 'pointer';
- toggleBtn.style.fontSize = '14px';
- toggleBtn.style.fontFamily = 'monospace';
- toggleBtn.style.padding = '4px 8px';
- toggleBtn.style.borderRadius = '6px';
- toggleBtn.style.boxShadow = '0 2px 4px rgba(0,0,0,0.3)';
- toggleBtn.style.transition = 'background 0.2s';
- toggleBtn.onmouseenter = () => toggleBtn.style.background = '#222';
- toggleBtn.onmouseleave = () => toggleBtn.style.background = '#000';
- let visible = true;
- toggleBtn.onclick = () => {
- visible = !visible;
- timerBox.style.display = visible ? 'block' : 'none';
- toggleBtn.textContent = visible ? '⨉' : '⧉';
- };
- container.appendChild(toggleBtn);
- container.appendChild(timerBox);
- document.body.appendChild(container);
- // Timer logic
- let seconds = 0;
- setInterval(() => {
- if (visible) {
- seconds++;
- const mins = Math.floor(seconds / 60).toString().padStart(2, '0');
- const secs = (seconds % 60).toString().padStart(2, '0');
- timerBox.textContent = `Time on site: ${mins}:${secs}`;
- }
- }, 1000);
- })();