您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Show time drag
- // ==UserScript==
- // @name Clock2
- // @description Show time drag
- // @author figuccio
- // @version 0.8
- // @namespace https://greasyfork.org/users/237458
- // @match *://*/*
- // @noframes
- // @grant GM_addStyle
- // @grant GM_setValue
- // @grant GM_getValue
- // @grant GM_registerMenuCommand
- // @require https://code.jquery.com/jquery-3.6.0.min.js
- // @require https://code.jquery.com/ui/1.13.2/jquery-ui.js
- // @icon https://www.google.com/s2/favicons?sz=64&domain=tampermonkey.net
- // @license MIT
- // ==/UserScript==
- (function() {
- 'use strict';
- const $ = window.jQuery.noConflict();
- const body=document.body;
- var todVisible = true; // Variabile per monitorare se l'orologio è visibile o meno
- // Funzione per salvare la posizione dell'orologio nella memoria locale
- function saveClockPosition(x, y) {
- GM_setValue('clockPosition', JSON.stringify({ x: x, y: y }));
- }
- // Funzione per caricare la posizione dell'orologio dalla memoria locale
- function loadClockPosition() {
- const savedPosition = GM_getValue('clockPosition');
- if (savedPosition) {
- const position = JSON.parse(savedPosition);
- tod.style.left = position.x + 'px';
- tod.style.top = position.y + 'px';
- }
- }
- var tod = document.createElement("div");
- tod.id = "todClock";
- tod.setAttribute("style", `
- top: 0;
- color: black;
- font-family: "Droid Sans Mono";
- font-size: 16pt;
- line-height: 20px;
- position: fixed;
- text-align: center;
- z-index: 99999999999;
- background-color: green;
- -moz-user-select: none;
- cursor: move;
- `);
- let use12HourFormat = GM_getValue('use12HourFormat', false); // Default è il formato 24 ore
- let language = GM_getValue('language') || 'it'; // Recupera la lingua dal localStorage o usa 'it' come predefinita
- const languages = {
- en: { weekday: 'short', month: 'short', day: '2-digit', year: 'numeric' },
- it: { weekday: 'short', month: '2-digit', day: '2-digit', year: 'numeric' }
- };
- function tick() {
- const now = new Date();
- let hours = now.getHours();
- const minutes = String(now.getMinutes()).padStart(2, "0");
- const seconds = String(now.getSeconds()).padStart(2, "0");
- const milliseconds = String(now.getMilliseconds()).padStart(3, "0");
- const date = now.toLocaleString(language, languages[language]); // Usa la lingua selezionata per la data
- let period = "";
- if (!use12HourFormat) {
- period = hours >= 12 ? " PM" : " AM";
- hours = hours % 12 || 12; // Converte in formato 12 ore
- }
- hours = String(hours).padStart(2, "0");
- tod.textContent =`${date} ${hours}:${minutes}:${seconds}:${milliseconds}${period}`;
- }
- function toggleLanguage() {
- language = language === 'it' ? 'en' : 'it'; // Cambia solo la lingua
- GM_setValue('language', language); // Salva la lingua scelta
- tick(); // Aggiorna immediatamente la visualizzazione
- }
- function toggleFormat() {
- //Cambia il formato orario
- use12HourFormat = !use12HourFormat;
- GM_setValue('use12HourFormat', use12HourFormat); // Salva lo stato del formato
- }
- // Menu commands
- GM_registerMenuCommand('Mostra/Nascondi orologio', function() {
- todVisible = !todVisible;
- $(tod).toggle(todVisible);
- });
- GM_registerMenuCommand("Cambia formato orario 12/24", toggleFormat);
- GM_registerMenuCommand("Cambia lingua", toggleLanguage);
- $(tod).draggable({
- containment: "window", // Assicura che l'elemento draggable sia confinato alla finestra del browser
- stop: function(event, ui) {
- saveClockPosition(ui.position.left, ui.position.top);
- }
- });
- body.append(tod);
- loadClockPosition(); // Carica la posizione dell'orologio dalla memoria locale
- tick();
- setInterval(tick, 70);
- })();