Help:Extension:GlobalCssJs/ru

This page is a translated version of the page Help:Extension:GlobalCssJs and the translation is 100% complete.

Расширение GlobalCssJs позволяет пользователям создавать страницу JavaScript и страницу CSS для загрузки в каждую wiki farm. Если вы перейдете на страницу Настройки > Внешний вид в любой вики, где включено расширение, вы найдете ссылки на ваши глобальные скрипты и таблицы стилей:

Общие CSS и JavaScript для всех вики-проектов (подробнее):

В вики-проектах Викимедиа эти глобальные настройки размещаются на Мета-Вики.

Глобальные скрипты (JavaScript)

Переменные

При добавлении скриптов в ваш global.js , имейте в виду, что, как и в случае с gadgets, переменные, объявленные с помощью "var example", не привязаны к объекту window: это локальные переменные, область действия которых представляет собой функцию-оболочку, вставленную ResourceLoader для реализации глобальный модуль (который называется "ext.globalcssjs.user"). Поэтому, если вы планируете переместить локальный скрипт в глобальный модуль, и ему необходимо определить глобальные переменные, убедитесь, что вы используете синтаксис "window.example" для их объявления.

Пример

/* Любой JavaScript, добавленный на эту страницу, будет загружаться на всех вики, где у вас есть учётная запись (см.[[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */
window.myConfig = true;
// [[wikipedia:User:Lupin/popups]]
window.popupAdminLinks = true;
mw.loader.load( '//en.wikipedia.org/w/index.php?title=User:Lupin/popups.js&action=raw&ctype=text/javascript' );

Конкретные URL-адреса

Вам нужно будет указать полный URL-адрес для загрузки скрипта.

Пример

/* Любой JavaScript, добавленный на эту страницу, будет загружаться на всех вики, где у вас есть учётная запись (см.[[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */

mw.loader.load( '//en.wikipedia.org/w/index.php?title=User:Lupin/popups.js&action=raw&ctype=text/javascript' );


Настройка для вики-страницы

Пример

/* Любой JavaScript, добавленный на эту страницу, будет загружаться на всех вики, где у вас есть учётная запись (см.[[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */
// Define a few functions
function onMultiLingualWikis(){
	// ...
}
function onWikibooks(){
	// ...
}
function onFrench(){
	// ...
}
function onRuWikisource(){
	// ...
}
function onEveryWiki(){
	mw.loader.load( '//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-UTCLiveClock.js&action=raw&ctype=text/javascript' );
}
onEveryWiki();
if ( /^(mediawiki|wikidata|meta|commons)wiki$/.test( mw.config.get( 'wgDBname' ) ) ) {
	onMultiLingualWikis();
} else if ( /wikibooks$/.test( mw.config.get( 'wgDBname' ) ) ) {
	onWikibooks();
} else if ( mw.config.get( 'wgContentLanguage' ) === 'fr' ) {
	onFrench();
} else if ( mw.config.get( 'wgDBname' ) === 'ruwikisource' ) {
	onRuWikisource();
}

Исключить вики источники

Если вы хотите исключить конкретную вики-страницу, например, английский вики источник, вы можете обернуть всю или часть вашего global.js с:

if ( mw.config.get("wgDBname") !== "enwikisource" ) {
	// Любой JavaScript, который вы хотите запустить на всех вики, кроме en wikisource, находится здесь
}

Пример: Установка глобального языка интерфейса

Note: Extension:GlobalPreferences (if present) provides this functionality more conveniently.

/* Change language to German */
mw.loader.using( 'mediawiki.user', function() {
	if ( mw.user.options.get( 'language' ) !== 'de' ) {
		( new mw.Api() ).postWithToken( 'csrf', {
			action: 'options',
			change: 'language=de'
		} ).then( function() {
			mw.notify( 'Language has been changed to German. Please refresh the page.' );
		} );
	} else {
		console.log( 'Language already set to German!' );
	}
} );

Глобальные таблицы стилей (CSS)

Примечание: Любые строка @import ... должны быть вверху.

Пример

/* Любой CSS, добавленный на эту страницу, будет загружаться во всех вики, где у вас есть учётная запись (см. [[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */

/* Hide a few elements of the interface */
#n-help,
#footer {
	display: none !important;
}

== Настройка для каждого оформления

В настоящее время расширение не предоставляет глобальный CSS/JS для конкретных оформлений, но можно настроить CSS и JS для оформления глобально. Для CSS вы можете редактировать внешний вид определенного оформления, используя такие классы, как "skin-vector" и "skin-monobook", которые автоматически добавляются к элементу body с помощью MediaWiki. Вы можете использовать селектор :not(), чтобы пропустить только одно оформление, например :not(.skin-minerva), чтобы не применять правило к мобильному оформлению.

Пример (CSS)

/* Любой CSS, добавленный на эту страницу, будет загружаться во всех вики, где у вас есть учётная запись (см. [[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */

/* Hide a few elements of the interface on vector skin */
.skin-vector #n-help,
.skin-vector #footer {
	display: none !important;
}

/* Bold the sidebar interwiki links to Enwiki/Simple, and interproject links to Commons/WikiVoyage */
.interwiki-en, .interwiki-simple, .wb-otherproject-commons, .wb-otherproject-wikivoyage {
        font-weight: bold;
}

Пример (JS)

/* Любой JavaScript, добавленный на эту страницу, будет загружаться на всех вики, где у вас есть учётная запись (см.[[mw:Special:MyLanguage/Help:Extension:GlobalCssJs|документацию]]). */
// Load JWB globally when using the Vector skin

if ( mw.config.get( 'skin' ) === 'vector' ) {
	mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js/load.js&action=raw&ctype=text/javascript');
}