MediaWiki:Common.js
MediaWiki界面页面
更多操作
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
console.log("𝐄𝐚𝐬𝐞𝐂𝐚𝐭𝐢𝐨𝐧 𝐖𝐈𝐊𝐈");
console.log("ᴠ1.2.3.2");
console.log("𝙷𝚎𝚕𝚕𝚘 𝙰𝚕𝚙𝚑𝚊𝙲𝚘𝚍𝚎");
console.log("=====================");
console.log("孩子们,我们被网易警告了o(╥﹏╥)o");
/* ====== Google Material Symbols ====== */
// var link = document.createElement('link');
// link.rel = 'stylesheet';
// link.href = 'https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200';
// document.head.appendChild(link);
// 侧边栏定制函数
function ModifySidebar(action, section, name, link) {
let target;
switch (section) {
case 'languages': target = 'p-lang'; break;
case 'toolbox': target = 'p-tb'; break;
case 'navigation': target = 'p-navigation'; break;
default: target = 'p-' + section; break;
}
if (action == 'add') {
let node = document.getElementById(target)
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
let aNode = document.createElement('a');
let liNode = document.createElement('li');
aNode.appendChild(document.createTextNode(name));
aNode.setAttribute('href', link);
liNode.appendChild(aNode);
liNode.className = 'plainlinks';
node.appendChild(liNode);
}
if (action == 'remove') {
let list = document.getElementById(target)
.getElementsByTagName('div')[0]
.getElementsByTagName('ul')[0];
let listelements = list.getElementsByTagName('li');
for (let i = 0; i < listelements.length; i++) {
if (
listelements[i].getElementsByTagName('a')[0].innerHTML == name ||
listelements[i].getElementsByTagName('a')[0].href == link
) {
list.removeChild(listelements[i]);
}
}
}
}
// 移除上传按钮
function CustomizeModificationsOfSidebar() {
ModifySidebar('remove', 'toolbox', 'Upload file', '/index.php?title=%E7%89%B9%E6%AE%8A:%E7%89%B9%E6%AE%8A%E9%A1%B5%E9%9D%A2');
}
// 页面背景图
$('').addClass('banner-image').insertBefore('#content');
// 页面专用脚本动态引入
(function() {
const pageScripts = {
'首页': 'MediaWiki:Index.js',
'琴叶茜·葵': 'MediaWiki:Index.js',
'圣符传说': 'MediaWiki:Index.js',
'模板:Tab': '模板:Tab/Index.js',
'飽きて放置したゲームの世界、からヤンデレヒロインがやってきて…': 'MediaWiki:Index.js',
'EaseCation_Wiki:总则': 'MediaWiki:GeneralMdTocGen.js',
'特殊:参数设置': 'MediaWiki:Wikii.js'
};
const currentPageName = mw.config.get('wgPageName');
const scriptToImport = pageScripts[currentPageName];
if (scriptToImport) {
mw.loader.load(scriptToImport);
}
})();
// 绑定检测
$(function () {
if (mw.user.isAnon()) return;
if (localStorage.getItem('wiki-bind-never-tip') === '1') return;
var xhr = new XMLHttpRequest();
xhr.open('GET', '/ecApi/wiki-bind-status.php', false);
xhr.send();
if (xhr.status !== 200) return;
var data = JSON.parse(xhr.responseText);
if (data.bound) return;
mw.loader.using('mediawiki.notification').then(function () {
var $text = $('').html(
`
您尚未绑定用户中心 立即前往
不再提示
`
);
// 不再提示链接事件
$text.find('a:last').on('click', function () {
localStorage.setItem('wiki-bind-never-tip', '1');
// 通过 tag 找到并关闭通知
var $notification = $('.mw-notification-tag-bind-notification');
var notif = $notification.data('mw-notification');
if (notif && notif.close) {
notif.close();
}
});
mw.notify($text, {
type: 'error',
autoHideSeconds: null,
tag: 'bind-notification'
});
});
});