MediaWiki:Script/inputBoxNoPrefix.js

Версия от 19:23, 4 февраля 2022; Mansur700 (обсуждение | вклад) (Новая страница: «//usage: {{выполнить скрипт|inputBoxNoPrefix}} // <div class=inputbox-no-prefix><inputbox>...</div> function movePrefix(){ //move prefix away fro...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Возможно, этот код документирован.

//usage: {{выполнить скрипт|inputBoxNoPrefix}} 
// <div class=inputbox-no-prefix><inputbox>...</div>

function movePrefix(){ //move prefix away from input
 mw.util.$content.find('div.inputbox-no-prefix')
 .find('form')
 .each( function(i, frm){
   $(frm).find('span.prefix').remove() //in case user clicked 'back' browser button
   var ttl = frm.title // same as $(frm).find('input[name=title]')
   var prefix = /^.+[:\/]/.exec( ttl.defaultValue )
   if (! prefix ) return
   prefix = prefix[0] 
   $( '<span class=prefix />' ).text( prefix ).insertBefore( ttl )
   ttl.value = ttl.value.substring( prefix.length)
   ttl.size -= prefix.length
   $(frm).submit( restorePrefix )
 })
}

function restorePrefix(){
 var sp = $(this).find('span.prefix').remove()
 if( !sp.length ) return
 this.title.value = sp.text() + this.title.value
}

if( mw.config.get('wgNamespaceNumber') != 0 ) $(movePrefix)