「MediaWiki:Common.js」の版間の差分
表示
細編集の要約なし |
細編集の要約なし |
||
| 77行目: | 77行目: | ||
addOnloadHook(referencePopUp); // in Wikipedia user script | addOnloadHook(referencePopUp); // in Wikipedia user script | ||
// referencePopUp(); // in Firefox extension "Greasemonkey" | // referencePopUp(); // in Firefox extension "Greasemonkey" | ||
/** | |||
* Collapsible tables ********************************************************* | |||
* | |||
* Description: Allows tables to be collapsed, showing only the header. See | |||
* [[Vikipedia:NavFrame]]. | |||
* Maintainers: [[User:SupernovaT]] | |||
*/ | |||
window.autoCollapse = 2; | |||
window.collapseCaption = "隠す"; | |||
window.expandCaption = "表示"; | |||
window.collapseTable = function ( tableIndex ) { | |||
var Button = document.getElementById( 'collapseButton' + tableIndex ); | |||
var Table = document.getElementById( 'collapsibleTable' + tableIndex ); | |||
if ( !Table || !Button ) { | |||
return false; | |||
} | |||
var Rows = Table.rows; | |||
var i; | |||
if ( Button.firstChild.data === collapseCaption ) { | |||
for ( i = 1; i < Rows.length; i++ ) { | |||
Rows[i].style.display = 'none'; | |||
} | |||
Button.firstChild.data = expandCaption; | |||
} else { | |||
for ( i = 1; i < Rows.length; i++ ) { | |||
Rows[i].style.display = Rows[0].style.display; | |||
} | |||
Button.firstChild.data = collapseCaption; | |||
} | |||
}; | |||
window.createCollapseButtons = function() { | |||
var tableIndex = 0; | |||
var NavigationBoxes = {}; | |||
var Tables = document.getElementsByTagName( 'table' ); | |||
var i; | |||
function handleButtonLink( index, e ) { | |||
window.collapseTable( index ); | |||
e.preventDefault(); | |||
} | |||
for ( i = 0; i < Tables.length; i++ ) { | |||
if ( $( Tables[i] ).hasClass( 'collapsible' ) ) { | |||
2015年11月28日 (土) 18:25時点における版
/*
* 拡張型折りたたみ要素(EnhancedCollapsibleElements)
* 説明書:https://ja.wikipedia.org/wiki/Help:拡張型折りたたみ可能要素
*/
importScript('MediaWiki:EnhancedCollapsibleElements.js');
/*
* Reference Pop Up
*
* This script is under public domain, and comes with ABSOLUTELY NO WARRANTY.
* You can use/modify/redistribute without any permission.
*/
// for WIkipedia user script
//
// How to use:
// * write "importScript('User:Mizusumashi/Script/ReferencePopUp.js');"
// in "User:_ACOUNT_/monobook.js"("_ACOUNT_" is your WIki acount).
// * This script need addOnloadHook()
// in http://upload.wikimedia.org/skins/common/wikibits.js.
// for Firefox extension "Greasemonkey"
//
// ==UserScript==
// @name WikipediaReferencePopUp
// @namespace mizusumashi
// @include http://*.wikipedia.org/*
// ==/UserScript==
hrefregex= new RegExp('');
hrefregex.compile('http://([^#]+)#(.+)');
refregex1 = new RegExp('');
refregex1.compile('^(<span [^>]+>)?(<b><a [^>]+>\\^</a></b>|\\^( <a [^>]+><sup><i><b>[^<]+</b></i></sup></a>)+) ', 'i');
refregex2 = new RegExp('');
refregex2.compile('<[^>]+>', 'g');
refregex3 = new RegExp('');
refregex3.compile('<span [^>]+>(<a [^>]+><b>.+</b></a></span> )+', 'i');
templateregex = new RegExp('');
templateregex.compile('^<a [^>]+><b>.+</b></a>$', 'i');
function isTemplate(foot)
{
var ret = templateregex.test(foot.innerHTML);
return ret;
}
function referencePopUp()
{
if(navigator.appName == "Microsoft Internet Explorer"){
return;
}
var arrayOfReference = document.getElementsByClassName('reference');
for( var i = 0; i < arrayOfReference.length; i++){
arrayOfReference[i].firstChild.href.match(hrefregex);
var foot = document.getElementById(RegExp.$2);
if(foot){
if(! isTemplate(foot)){
text = foot.innerHTML;
text = text.replace(refregex1, '');
text = text.replace(refregex2, '');
} else { // [[Template:Note label]]
text = foot.parentNode.innerHTML;
text = text.replace(refregex3, '');
text = text.replace(refregex2, '');
}
} else {
text = 'ERROR: There is no footnote.';
}
arrayOfReference[i].firstChild.title = text;
}
}
addOnloadHook(referencePopUp); // in Wikipedia user script
// referencePopUp(); // in Firefox extension "Greasemonkey"
/**
* Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Vikipedia:NavFrame]].
* Maintainers: [[User:SupernovaT]]
*/
window.autoCollapse = 2;
window.collapseCaption = "隠す";
window.expandCaption = "表示";
window.collapseTable = function ( tableIndex ) {
var Button = document.getElementById( 'collapseButton' + tableIndex );
var Table = document.getElementById( 'collapsibleTable' + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
var i;
if ( Button.firstChild.data === collapseCaption ) {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
} else {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
};
window.createCollapseButtons = function() {
var tableIndex = 0;
var NavigationBoxes = {};
var Tables = document.getElementsByTagName( 'table' );
var i;
function handleButtonLink( index, e ) {
window.collapseTable( index );
e.preventDefault();
}
for ( i = 0; i < Tables.length; i++ ) {
if ( $( Tables[i] ).hasClass( 'collapsible' ) ) {