Clock2

Show time drag

目前为 2025-03-29 提交的版本。查看 最新版本

// ==UserScript==
// @name        Clock2
// @description Show time drag
// @author      figuccio
// @version     0.6
// @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.12.1/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';
    }
}

// Aggiungi comandi di menu per mostrare e nascondere l'orologio
GM_registerMenuCommand("Mostra/Nascondi orologio", function() {
    if (todVisible) {
        $(tod).hide();
        todVisible = false;
    } else {
        $(tod).show();
        todVisible = true;
    }
});

////////////////////////

if( top.location != location ) return;

Number.prototype.pad = function(size)	{
	if( typeof(size) !== "number" ) {
		size = 2;
	}
	var	s = String(this);
	while (s.length < size) {
		s = "0" + s;
	}
	return s;
}

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;
`);


function tick() {
    var d = new Date();
    var Y = d.getFullYear();
    var M = (d.getMonth()+1).pad();
    var D = d.getDate().pad();
    var h = d.getHours().pad();
    var m = d.getMinutes().pad();
    var s = d.getSeconds().pad();
    var ms = d.getMilliseconds();
    tod.innerHTML=h + ":" + m + ":" + s + ":" + ms + "-" + D + "/" + M + "/" + Y;
}

$(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);

})();