Открыть меню
Переключить меню настроек
Открыть персональное меню
Вы не представились системе
Ваш IP-адрес будет виден всем, если вы внесёте какие-либо изменения.

MediaWiki:Common.js: различия между версиями

Страница интерфейса MediaWiki
Новая страница: «Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице: function drawAnalogClock(ctx, radius, date) { ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height); ctx.save(); ctx.translate(radius, radius); // Face ctx.beginPath(); ctx.arc(0, 0, radius - 5, 0, 2 * Math.PI); ctx.fillStyle = '#f0f0f0'; ctx.fill(...»
 
Нет описания правки
Строка 1: Строка 1:
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
function drawAnalogClock(ctx, radius, date) {
function updateUTCClock() {
     ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
     const clock = document.getElementById('utc-clock');
     ctx.save();
     if (!clock) return;
    ctx.translate(radius, radius);


     // Face
     const now = new Date();
     ctx.beginPath();
     const hours = now.getUTCHours().toString().padStart(2, '0');
    ctx.arc(0, 0, radius - 5, 0, 2 * Math.PI);
     const minutes = now.getUTCMinutes().toString().padStart(2, '0');
     ctx.fillStyle = '#f0f0f0';
     const seconds = now.getUTCSeconds().toString().padStart(2, '0');
     ctx.fill();
    ctx.lineWidth = 4;
    ctx.stroke();


     // Numbers
     clock.textContent = `UTC: ${hours}:${minutes}:${seconds}`;
    ctx.font = radius * 0.15 + "px Arial";
}
    ctx.textBaseline = "middle";
    ctx.textAlign = "center";
    for (let num = 1; num <= 12; num++) {
        let ang = num * Math.PI / 6;
        ctx.rotate(ang);
        ctx.translate(0, -radius * 0.85);
        ctx.rotate(-ang);
        ctx.fillText(num.toString(), 0, 0);
        ctx.rotate(ang);
        ctx.translate(0, radius * 0.85);
        ctx.rotate(-ang);
    }
 
    // Time
    let hour = date.getUTCHours();
    let minute = date.getUTCMinutes();
    let second = date.getUTCSeconds();
 
    // Hour hand
    hour = hour % 12;
    hour = (hour * Math.PI / 6) + (minute * Math.PI / (6 * 60));
    drawHand(ctx, hour, radius * 0.5, 6);
 
    // Minute hand
    minute = (minute * Math.PI / 30) + (second * Math.PI / (30 * 60));
    drawHand(ctx, minute, radius * 0.75, 4);


    // Second hand
// Обновление каждую секунду
    second = (second * Math.PI / 30);
setInterval(updateUTCClock, 1000);
    drawHand(ctx, second, radius * 0.85, 2, "#D33");
 
    ctx.restore();
}


function drawHand(ctx, pos, length, width, color = "#000") {
// Первичная инициализация
    ctx.beginPath();
document.addEventListener('DOMContentLoaded', updateUTCClock);
    ctx.lineWidth = width;
    ctx.lineCap = "round";
    ctx.strokeStyle = color;
    ctx.moveTo(0,

Версия от 21:37, 22 апреля 2025

/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
function updateUTCClock() {
    const clock = document.getElementById('utc-clock');
    if (!clock) return;

    const now = new Date();
    const hours = now.getUTCHours().toString().padStart(2, '0');
    const minutes = now.getUTCMinutes().toString().padStart(2, '0');
    const seconds = now.getUTCSeconds().toString().padStart(2, '0');

    clock.textContent = `UTC: ${hours}:${minutes}:${seconds}`;
}

// Обновление каждую секунду
setInterval(updateUTCClock, 1000);

// Первичная инициализация
document.addEventListener('DOMContentLoaded', updateUTCClock);