您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Hide Mouse cursor when not in use/Show when in use
当前为
- // ==UserScript==
- // @name Hide Mouse Cursor
- // @namespace https://greasyfork.org/users/45933
- // @version 0.0.2
- // @author Fizzfaldt
- // @license MIT
- // @description Hide Mouse cursor when not in use/Show when in use
- // @run-at document-end
- // @grant none
- // @noframes
- // @match *://*/*
- // ==/UserScript==
- /* jshint esversion: 6 */
- (function () {
- let hidden = false;
- const styleEl = document.createElement("style");
- // Use some poop clowns to get a high selector specificity so we can override
- // other selectors in case they also use !important.
- const poopClowns = ":not(#💩🤡)".repeat(20);
- // Height 100% sometimes needed for firefox to hide cursor
- styleEl.textContent = `
- html, body {
- height: 100%;
- }
- ${poopClowns} {
- cursor: none !important ;
- }
- `;
- function hideHandler() {
- if (hidden) return;
- if (document.activeElement.tagName == "TEXTAREA") {
- // Do nothing when inside a text field.
- return;
- }
- hidden = true;
- document.head.append(styleEl);
- }
- function showHandler() {
- if (!hidden) return;
- hidden = false;
- styleEl.remove();
- }
- const scrollEl = document.scrollingElement;
- const hideEvents = ["scroll", "keyup"];
- const showEvents =
- (
- "PointerEvent" in window
- ) ? ["pointerdown", "pointermove"]
- : ["mousedown", "mousemove", "touchstart", "touchmove", "wheel"];
- const options = {capture: true, passive: true};
- for (const event of hideEvents) {
- scrollEl.addEventListener(event, hideHandler, options);
- }
- for (const event of showEvents) {
- scrollEl.addEventListener(event, showHandler, options);
- }
- })();