MediaWiki:Common.js
外觀
註:重取頁面,文方新焉。
- Firefox / Safari:押 Shift 並點 重新載入,或合鍵 Ctrl-F5 或 Ctrl-R(Mac 為 ⌘-R)。
- Google Chrome:點 Ctrl-Shift-R(Mac為 ⌘-Shift-R)。
- Internet Explorer:押 Ctrl 並點 重新整理,或合鍵 Ctrl-F5。
- Opera:須至 Tools → Preferences 清謄本(Mac 為 Opera → Preferences)。
// BEGIN Configuration for "star" logo in front of interwiki links to Featured Articles
/** set to false in Special:Mypage/monobook.js to switch off this "feature" */
var linkFA_enabled = true;
/** description that is displayed when cursor hovers above FA interwiki links */
var linkFA_description = "他山之玉";
// linkFA_bullet and linkFA_style werden nur für cologneblue, nostalgia and standard verwendet,
// für monobook und simple siehe [[MediaWiki:Common.css]]
/** image to use instead of the standard bullet (for cologneblue, nostalgia and standard */
var linkFA_bullet = "/media/wikipedia/commons/d/d0/Monobook-bullet-star-transparent.png";
/** style to use for the linkFA_bullet img */
var linkFA_style = "margin-right: 0.2em;";
/**
* star logo for featured articles in other languages,
* see Template:Link_FA and MediaWiki:Common.css
*/
function linkFA() {
// early exit when disabled
if (!linkFA_enabled) return;
// skins need to be treated differently
if (mw.config.get('skin') == "monobook") {
newer();
}
else if (mw.config.get('skin') == "cologneblue") {
older();
}
/** skin == "monobook"*/
function newer() {
// links are to replaced in p-lang only
var pLang = document.getElementById("p-lang");
if (!pLang) return;
var lis = pLang.getElementsByTagName("li");
for (var i = 0; i < lis.length; i++) {
var li = lis[i];
// only links with a corresponding Link_FA template are interesting
if (!document.getElementById(li.className + "-fa") || li.className.indexOf("badge-featuredarticle") !== -1) continue;
// additional class so the template can be hidden with CSS
li.className += " FA";
// change title
li.title = linkFA_description;
}
}
/** skin == "cologneblue"*/
function older() {
// these root elements can contain FA-links
var rootIds = new Array("topbar", "footer");
for (var i=0; i<rootIds.length; i++) {
var rootId = rootIds[i];
var root = document.getElementById(rootId);
if (!root) continue;
// if the root exists, try to decorate all the links within
var links = root.getElementsByTagName("a");
for (var j=0; j<links.length; j++) {
var link = links[j];
decorate(link);
}
}
}
/** id necessary, modify a link to show the FA-star (older) */
function decorate(link) {
// exit if not a FA-link
var lang = link.title.split(":")[0]; // not precise enough
var fa = document.getElementById("interwiki-" + lang + "-fa");
if (!fa) return;
// possible problem owing the standard skin: "Link FA" template is transcluded with a non-interwiki parameter, for example "Special"
// result: links to special pages in the topbar and/or footer might also be marked as a Featured Article
// build an image-node for the FA-star
var img = document.createElement("img");
img.setAttribute("src", linkFA_bullet);
img.setAttribute("alt", linkFA_description);
img.setAttribute("style", linkFA_style);
// decorate the link with the image
link.appendChild(img);
link.appendChild(link.removeChild(link.firstChild));
link.setAttribute("title", linkFA_description);
}
}
$(linkFA);
// END Configuration for "star" logo in front of interwiki links to Featured Articles
/**
* WikiMiniAtlas is a popup click and drag world map.
* See [[meta:WikiMiniAtlas]] for more information.
* Maintainers: [[w:User:Dschwen]]
*/
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript' );
/**
* Remove need for CSS hacks regarding MSIE and IPA.
*/
if(navigator.userAgent.indexOf("MSIE") != -1 && document.createStyleSheet) {
document.createStyleSheet().addRule('.IPA', 'font-family: "Doulos SIL", "Charis SIL", Gentium, "DejaVu Sans", Code2000, "TITUS Cyberbit Basic", "Arial Unicode MS", "Lucida Sans Unicode", "Chrysanthi Unicode";');
}
/** Wiktionary Change Color*************************************************************
*/
function wiktionaryChangeColor() {
var a = document.getElementsByTagName("A");
for(var i = 0;i<a.length;i++){
t = /^維基大典:維基爾雅\//.exec(a[i].title);
if (t){
a[i].style.color = "green";
}
}
}
$(wiktionaryChangeColor);
/** Interwiki*************************************************************
*/
function mainPageAppendCompleteListLink() {
mw.loader.using(['mediawiki.util']).then(function () {
mw.util.addPortletLink('p-lang', '//meta.wikimedia.org/wiki/List_of_Wikipedias',
'一覽', 'interwiki-completelist', '縱橫維基');
});
}
if ((mw.config.get('wgTitle') == '卷首' && mw.config.get('wgNamespaceNumber') == 4) || (mw.config.get('wgTitle') == '維基大典:卷首' && mw.config.get('wgNamespaceNumber') == 4) || (mw.config.get('wgTitle') == '維基大典' && mw.config.get('wgNamespaceNumber') == 100)) {
$(mainPageAppendCompleteListLink);
}
/*
* 刪除首頁
*/
(function () {
if (!(mw.config.get('wgAction') === 'delete' && mw.config.get('wgPageName') === '維基大典:卷首')) {
return;
}
$('#wpConfirmB').attr('type', 'reset');
$('#wpConfirmB').click(function () {
alert('恭喜!您已經達成成就「刪除首頁」!請點擊「確定」領取獎勵。');
$.ajax({
url: mw.util.wikiScript('api'),
data: {
format: 'json',
action: 'block',
user: mw.config.get('wgUserName'),
expiry: '1 day',
reason: 'Attempt to delete the main page',
allowusertalk: '',
token: mw.user.tokens.get('editToken'),
},
dataType: 'json',
type: 'POST',
});
});
$('#wpConfirmB').mouseenter(function () {
$('#mw-delete-table').css('padding-bottom', '40px');
$('#wpConfirmB')
.css('position', 'fixed')
.css('z-index', '9999')
.css('left', (Math.random() * window.innerWidth) + 'px')
.css('top', (Math.random() * window.innerHeight) + 'px');
});
})();