MediaWiki:Common.js: различия между версиями

Материал из Анклав
Меняем нерабочий код на рабочий
Нет описания правки
(Меняем нерабочий код на рабочий)
Строка 49: Строка 49:


/**
/**
  * Выполнение скриптов из пространства MediaWiki, указанных в URL
  * ImageStacks
  * См. также https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL
  * Maintainer: [[User:Hellerhoff]], [[User:DieBuche]]
  */
  */
var withJS = location.href.match( /[&?]withjs=((mediawiki:)?([^&<>=#]+\.js))/i );
// Only load if page contains template
if ( withJS ) {
mw.hook( 'wikipage.content' ).add( function ( $content ) {
importScript_( 'MediaWiki:' + withJS[3] );
    if ( $content.find( 'div.ImageStack' ).length ) mw.loader.load( 'ext.gadget.ImageStack' );
}
 
/**
* Код, который нужно выполнить как можно раньше. Он выполняется, если загружен подвал страницы,
* иначе же ждёт наступления события wikipage.content (см. выше определение runAsEarlyAsPossible
* и ниже про wikipage.content).
*/
runAsEarlyAsPossible( function () {
/**
* {{выполнить скрипт}}
*/
$( '.executeJS' ).each( function () {
var names = $( this ).data( 'scriptnames' );
if (names) {
names.split( ' ' ).forEach( function ( name ) {
name = name.replace( /[^\w_-]/g, '' );
if ( name ) {
importScript( 'MediaWiki:Script/' + name + '.js' );
}
} );
}
} );
} );
} );