您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a fading line mouse tail at the top of webpages
- // ==UserScript==
- // @name Useless Things Series: The Line
- // @version 1.2
- // @description Adds a fading line mouse tail at the top of webpages
- // @match *://*/*
- // @grant none
- // @license MIT
- // @namespace https://greasyfork.org/users/1126616
- // ==/UserScript==
- (function() {
- 'use strict';
- const tail = createTail();
- document.body.appendChild(tail);
- function createTail() {
- const tailElement = document.createElement('div');
- tailElement.style.position = 'fixed';
- tailElement.style.top = '0';
- tailElement.style.left = '0';
- tailElement.style.width = '0';
- tailElement.style.height = '4px';
- tailElement.style.opacity = '1';
- tailElement.style.transition = 'width 0.3s linear, opacity 1s ease-out';
- return tailElement;
- }
- function updateTail(event) {
- const mouseX = event.clientX;
- const mouseY = event.clientY;
- tail.style.width = mouseX + 'px';
- tail.style.opacity = '1';
- }
- function fadeOutTail() {
- tail.style.opacity = '0';
- }
- function changeColor() {
- const randomColor = getRandomColor();
- tail.style.backgroundColor = randomColor;
- }
- function getRandomColor() {
- const letters = '0123456789ABCDEF';
- let color = '#';
- for (let i = 0; i < 6; i++) {
- color += letters[Math.floor(Math.random() * 16)];
- }
- return color;
- }
- function fadeInTail() {
- tail.style.opacity = '1';
- changeColor();
- }
- document.addEventListener('mousemove', updateTail);
- let timeoutId;
- document.addEventListener('mousemove', function() {
- clearTimeout(timeoutId);
- timeoutId = setTimeout(fadeOutTail, 2000);
- });
- document.addEventListener('mouseover', fadeInTail);
- })();