MediaWiki:Common.js: различия между версиями
Материал из bolshe.wiki
Admin (обсуждение | вклад) Нет описания правки Метка: отменено |
Admin (обсуждение | вклад) Нет описания правки Метка: ручная отмена |
||
| Строка 22: | Строка 22: | ||
new google.translate.TranslateElement({ | new google.translate.TranslateElement({ | ||
pageLanguage: 'ru', // Исходный язык вашей Вики (измените, если основной язык другой) | pageLanguage: 'ru', // Исходный язык вашей Вики (измените, если основной язык другой) | ||
layout: google.translate.TranslateElement.InlineLayout.SIMPLE, // Компактный вид виджета | |||
autoDisplay: false | autoDisplay: false | ||
}, 'google_translate_element'); | }, 'google_translate_element'); | ||
Версия от 16:00, 22 августа 2026
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
/* Динамическое добавление виджета Google Translate в боковую панель MediaWiki */
(function () {
// Ждем полной загрузки структуры документа MediaWiki
mw.hook('wikipage.content').add(function () {
// Находим элемент бокового меню (подходит для скинов Vector, Monobook)
var sidebar = document.getElementById('mw-panel') || document.getElementById('sidebar') || document.getElementById('p-navigation');
if (sidebar && !document.getElementById('google_translate_element')) {
// 1. Создаем HTML-контейнер для самого виджета
var translateDiv = document.createElement('div');
translateDiv.id = 'google_translate_element';
translateDiv.style.padding = '10px';
translateDiv.style.marginBottom = '10px';
// Вставляем контейнер в самое начало бокового меню
sidebar.insertBefore(translateDiv, sidebar.firstChild);
// 2. Объявляем глобальную функцию инициализации для Google API
window.googleTranslateElementInit = function () {
new google.translate.TranslateElement({
pageLanguage: 'ru', // Исходный язык вашей Вики (измените, если основной язык другой)
layout: google.translate.TranslateElement.InlineLayout.SIMPLE, // Компактный вид виджета
autoDisplay: false
}, 'google_translate_element');
};
// 3. Динамически загружаем внешний JS-скрипт Google Translate API
var googleScript = document.createElement('script');
googleScript.type = 'text/javascript';
googleScript.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
document.head.appendChild(googleScript);
}
});
})();
