MediaWiki:Gadget-LiveClock.js
Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
- Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
- Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
- Opera: Нажмите Ctrl+F5.
mw.loader.using(['mediawiki.util']).then(function () {
// Формируем ссылку на очистку кэша текущей страницы
var purgeUrl = mw.util.getUrl(mw.config.get('wgPageName'), { action: 'purge' });
// Добавляем элемент в верхнее личное меню (p-personal)
var clockNode = mw.util.addPortletLink(
'p-personal',
purgeUrl,
'', // Текст пустой, он будет каждую секунду заполняться временем
'pt-liveclock',
'Очистить кэш текущей страницы',
'',
'#pt-userpage' // Поместить левее ссылки на личную страницу (можно убрать)
);
if (!clockNode) return;
// Находим саму кликабельную ссылку внутри созданного элемента
var link = clockNode.querySelector('a') || clockNode;
link.style.fontWeight = 'bold'; // Делаем шрифт часов жирным
// Функция обновления времени (использует локальное время)
function updateTime() {
var d = new Date();
var h = String(d.getHours()).padStart(2, '0');
var m = String(d.getMinutes()).padStart(2, '0');
var s = String(d.getSeconds()).padStart(2, '0');
link.textContent = h + ':' + m + ':' + s;
}
// Запускаем часы сразу и ставим таймер на обновление каждую секунду
updateTime();
setInterval(updateTime, 1000);
});