MediaWiki:Common.js

来自帝鹰维基
Diyingadmin(留言 | 贡献)2026年10月22日 (四) 16:36的版本 (v11)
跳转到导航 跳转到搜索

注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
  • Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
  • Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
  • Opera:按 Ctrl-F5。
/* =====================================================================
   帝鹰维基 · 顶部主导航(配合 MediaWiki:Common.css 的 #dy-topnav 深蓝横条)
   ★ 改导航入口就在下面 links 列表里:['显示文字','页面标题'],一行一个。
   ===================================================================== */
(function () {
  var links = [
    ['主站', 'Main_Page'],
    ['成员专区', '帝鹰核心成员'],
    ['组织章程', '组织章程'],
    ['史料归档', '聊天室记录归档'],
    ['分类', 'Special:Categories']
  ];
  function build() {
    if (document.getElementById('dy-topnav')) return;
    var nav = document.createElement('nav');
    nav.id = 'dy-topnav';
    links.forEach(function (it) {
      var a = document.createElement('a');
      a.href = mw.util.getUrl(it[1]);
      a.textContent = it[0];
      nav.appendChild(a);
    });
    var pageBase = document.getElementById('mw-page-base');
    if (pageBase && pageBase.parentNode) {
      pageBase.parentNode.insertBefore(nav, pageBase);
    } else {
      document.body.insertBefore(nav, document.body.firstChild);
    }
  }
  if (window.jQuery && mw && mw.util) {
    $(build);
    $(addUploadButton);
  } else {
    document.addEventListener('DOMContentLoaded', function(){ build(); addUploadButton(); });
  }
})();

/* =====================================================================
   管理员专属:右下角「⬆ 上传图片」浮动按钮(访客/普通账号不显示)
   点击进入 MediaWiki 原生上传页,从本地相册选择图片上传,
   传完后把文件名填进主页卡片模板的 头像= 参数即可完成更换头像。
   ===================================================================== */
function addUploadButton() {
  var groups = mw.config.get('wgUserGroups') || [];
  if (groups.indexOf('sysop') === -1) return;           // 仅管理员可见
  if (document.getElementById('dy-upbtn')) return;
  var a = document.createElement('a');
  a.id = 'dy-upbtn';
  a.href = mw.util.getUrl('Special:Upload');
  a.textContent = '⬆ 上传图片/头像';
  a.title = '管理员专用:从本地上传图片,传完把文件名填进卡片';
  document.body.appendChild(a);
}