В сентябре 2017 года был произведён глобальный рефакторинг кода, что позволило сократить количество запросов и минимизировать код, благодаря использованию ResourceLoader и системы гаджетов. Общий код на протяжении года приводился к соответствию общим стайлгайдам MediaWiki. На этой странице описаны JavaScript и CSS страницы в пространстве MediaWiki нашего раздела.
MediaWiki автоматически подключает к каждой странице Common.js, Common.css и два соответствующих файла текущей темы оформления.
Стандарт оформления кода
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442_\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f_\u043a\u043e\u0434\u0430","replies":[]}}-->
Так как Википедия является открытым проектом, в который вовлечено большое количество участников, рекомендуется при редактировании CSS и JS файлов пользоваться утвержденными стандартами MediaWiki: Manual:Coding conventions/CSS и Manual:Coding conventions/JS. В случаях, не описанных в данных документах, для CSS рекомендуется использовать стандарты Google.
На заглавной странице:
- добавляет ссылку «полный список» в конец списка интервик
- эта ссылка актуальна в связи с тем, что список интервик не полный;
- прячет несколько ненужных элементов
- эти элементы второстепенны (они видны посетителям с отключённым JavaScript) и вынесены в этот файл для разгрузки глобальных CSS файлов;
В зависимости от текущей страницы Common.js вызывает другие файлы, описанные ниже. Эти файлы не являются стандартными для MediaWiki и были созданы администраторами проекта.
Вызывается при редактировании, добавляет:
- кнопки вставки общеупотребительных фраз под полем описания правки;
- напоминание о необходимости подписаться на большинстве страниц обсуждения. Напоминание активно только для IP- и новых участников, остальные участники по желанию могут добавить себе в ваш личный common.js код:
sigWarning = true; // Напоминать про отсутствие подписи на большинстве страниц дискуссий
Дополнительная функциональность на странице истории: реализация функции «Вернуть к …»
Дополнительная функциональность на странице загрузки файла:
- вставка шаблонов в поле описания,
- предупреждения о лицензиях,
- возможность Ajax-предпросмотра описания,
- сворачивание блока быстрой вставки.
См. также MediaWiki:Uploadtext.
Выпадающий список внешнего поиска на странице поиска.
Вызывается из Common.js только для администраторов, функциональность описана на странице Обсуждение MediaWiki:Group-sysop.js.
Vector.js
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Vector.js","replies":[]}}-->
В зависимости от выбранной участником темы оформления, MediaWiki также автоматически выполняет .js файл темы оформления.
Эти страницы считаются устаревшими, и разработчики не рекомендуют их использовать.
Содержит код для улучшения совместимости темы «Современная» с персональными скриптами, написанными для темы «MonoBook»
CSS код
|
Описание
|
body.page-Заглавная_страница { /*...*/ }
|
спрятывание ненужных элементов на заглавной странице; некоторые другие (менее важные) элементы прячутся в Mainpage.js
|
#file img {
background: url("//upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png") repeat;
}
|
Фон на странице описания изображения, полезен для наглядности изображений с прозрачностью.
|
.allpagesredirect,
span.redirect-in-category a {
font-style: italic;
}
|
Выделение курсивом перенаправлений на страницах категорий, а также на AllPages и PrefixIndex
|
.standard,
.wide { /*...*/ }
|
См. Википедия:Оформление таблиц
|
|
Около 60 строк кода для оформления {{ambox}}
|
.infobox { /*...*/ }
.notice { /*...*/ }
.messagebox { /*...*/ } /* Устаревший */
|
Классы для стандартного офомления различных шаблонов-сообщений, в основном для страниц обсуждений
|
/* Style for horizontal lists (separator following item) */
.hlist dl,
.hlist ol,
.hlist ul { /*...*/ }
|
Набор классов для плоских списков (списки оборачиваются в <div class=hlist>...</div> )
|
Vector.css
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Vector.css","replies":[]}}-->
В зависимости от выбранного оформления движок подключает один из CSS файлов оформления. В этих файлах располагаются CSS правила, зависящие от выбранной темы оформления, как правило для «внешних» элементов интерфейса (находящихся вне области статьи).
В большинстве файлов используются следующие правила:
CSS код
|
Описание
|
|
оформление подзаголовка «Материал из Википедии — свободной энциклопедии», который в некоторых темах по умолчанию спрятан
|
Script/criteriaCheck.js
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Script\/criteriaCheck.js","replies":[]}}-->
См. Википедия:Глобальный код/Автоматическая проверка соответствия критериям.
Гаджеты
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-\u0413\u0430\u0434\u0436\u0435\u0442\u044b","replies":["h-\u0421\u043a\u0440\u044b\u0442\u044b\u0435_\u0433\u0430\u0434\u0436\u0435\u0442\u044b-\u0413\u0430\u0434\u0436\u0435\u0442\u044b"]}}-->
У многих гаджетов есть страница описания, которую можно найти например со страницы Special:Gadgets.
Скрытые гаджеты
См. Проект:Технические работы/Разработчикам скриптов#Добавление кнопок на панели инструментов.
См. Википедия:Гаджеты/Гаджет проекта «Избранные списки и порталы»
См. также
__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-\u0421\u043c._\u0442\u0430\u043a\u0436\u0435","replies":[]}}-->
|
---|
CSS проекта | |
---|
JS проекта | |
---|
Общие CSS | |
---|
|
|
|
|