MediaWiki:Common.js: відмінності між версіями
Wiki (обговорення | внесок) Немає опису редагування |
Wiki (обговорення | внесок) Немає опису редагування |
||
| Рядок 870: | Рядок 870: | ||
// Простий спосіб додати елементи в меню | |||
// | function addToMenu() { | ||
function | // Чекаємо поки меню повністю завантажиться | ||
const menu = document.querySelector('#mw-mf-page-left'); | setTimeout(function() { | ||
const menu = document.querySelector('#mw-mf-page-left'); | |||
// | if (!menu) return; | ||
// Шукаємо список навігації | |||
let navList = menu.querySelector('#p-navigation'); | let navList = menu.querySelector('#p-navigation'); | ||
// Якщо списку немає - створюємо його | |||
if (!navList) { | if (!navList) { | ||
navList = document.createElement('ul'); | navList = document.createElement('ul'); | ||
| Рядок 884: | Рядок 888: | ||
} | } | ||
// | // Перевіряємо чи вже є наші елементи | ||
if (! | const currentHtml = navList.innerHTML.toLowerCase(); | ||
navList.innerHTML | if (!currentHtml.includes('головна') && !currentHtml.includes('випадкова')) { | ||
// Додаємо обидва елементи | |||
navList.innerHTML = ` | |||
<li class="toggle-list-item"> | <li class="toggle-list-item"> | ||
<a class="toggle-list-item__anchor" href="/w/index.php/ | <a class="toggle-list-item__anchor" href="/w/index.php/Головна_сторінка"> | ||
<span class="minerva-icon minerva-icon--home"></span> | <span class="minerva-icon minerva-icon--home"></span> | ||
Головна сторінка | <span class="toggle-list-item__label">Головна сторінка</span> | ||
</a> | </a> | ||
</li> | </li> | ||
<li class="toggle-list-item"> | <li class="toggle-list-item"> | ||
<a class="toggle-list-item__anchor" href="/w/index.php/ | <a class="toggle-list-item__anchor" href="/w/index.php/Спеціальна:Випадкова_сторінка"> | ||
<span class="minerva-icon minerva-icon--die"></span> | <span class="minerva-icon minerva-icon--die"></span> | ||
Випадкова стаття | <span class="toggle-list-item__label">Випадкова стаття</span> | ||
</a> | </a> | ||
</li> | </li> | ||
`; | ` + navList.innerHTML; | ||
} | } | ||
}, 100); | |||
} | |||
// Запускаємо при кліку на меню | |||
document.addEventListener('click', function(e) { | |||
if (e.target.closest('#mw-mf-main-menu-button') || e.target.closest('#main-menu-input')) { | |||
addToMenu(); | |||
} | } | ||
} | }); | ||
// | // Також запускаємо при завантаженні | ||
document.addEventListener('DOMContentLoaded', addToMenu); | |||