打开/关闭菜单
18
59
18
567
植物大战僵尸杂交版Wiki
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Common.js:修订间差异

MediaWiki界面页面
无编辑摘要
Operator留言 | 贡献
无编辑摘要
第1行: 第1行:
(function() {
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */
     // 防止重复执行的全局标志
 
     if (window.__globalFooterAdded) {
// 自动加载 MediaWiki:Footer 页面内容,并插入到每个页面底部
 
$(document).ready(function() {
     const namespace = mw.config.get('wgNamespaceNumber');
    const action = mw.config.get('wgAction');
     if (namespace !== 0 || action !== 'view') {
         return;
         return;
     }
     }
      
      
     // 要插入的 HTML
     $.get("/index.php?action=raw&title=MediaWiki:Footer")
    var footerHtml = '<div id="global-footer-links" style="width:100%; margin-top:20px; padding:15px 0; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; border-top:1px solid #ccc;">' +
         .done(function(content) {
        '<div><a href="https://new.pvzhe.wiki/index.php?title=特殊:创建账户&returnto=首页">加入我们</a></div>' +
             if (content.trim() !== '') {
        '<div><a href="https://www.pvzhe.com/new">前往官网以了解更多游戏信息</a></div>' +
                 $('#mw-content-text').append(
        '</div>';
                    '<div class="global-footer">' + content + '</div>'
   
                 );
    // 插入函数
    function insertFooter() {
         if (document.getElementById('global-footer-links')) {
            return true;
        }
       
        // 手机端常用容器(Minerva 皮肤)
        var mobileSelectors = [
            '.mw-body',          // Minerva 主内容区
            '.content',          // 通用内容区
            'main',              // HTML5 主标签
            '.mw-footer-container', // Minerva 页脚容器
            '.minerva-footer'    // Minerva 页脚
        ];
       
        // PC 端常用容器
        var pcSelectors = [
            '#footer',            // Vector 皮肤页脚
            '#mw-footer',        // 通用页脚
            'footer',            // HTML5 页脚
            '.footer'            // 通用页脚类
        ];
       
        // 先找页脚(PC 和手机)
        var allSelectors = mobileSelectors.concat(pcSelectors);
        for (var i = 0; i < allSelectors.length; i++) {
            var element = document.querySelector(allSelectors[i]);
             if (element) {
                // 如果是内容区(.mw-body 等),用 append;如果是页脚,用 before
                if (allSelectors[i] === '.mw-body' || allSelectors[i] === '.content' || allSelectors[i] === 'main') {
                    element.insertAdjacentHTML('beforeend', footerHtml);
                } else {
                    element.insertAdjacentHTML('beforebegin', footerHtml);
                }
                window.__globalFooterAdded = true;
                 return true;
            }
        }
       
        // 最后的备选:找任何主要内容区
        var lastResort = document.querySelector('#mw-content-text, .mw-body-content, #content');
        if (lastResort) {
            lastResort.insertAdjacentHTML('beforeend', footerHtml);
            window.__globalFooterAdded = true;
            return true;
        }
       
        return false;
    }
   
    // 执行插入(兼容各种加载时机)
    function tryInsert() {
        if (insertFooter()) return;
       
        // 如果 DOM 还没准备好,等待
        if (document.readyState === 'loading') {
            document.addEventListener('DOMContentLoaded', function() {
                setTimeout(insertFooter, 300);
            });
        }
       
        // 监听 DOM 变化(应对动态加载内容)
        var observer = new MutationObserver(function() {
            if (insertFooter()) {
                 observer.disconnect();
             }
             }
         });
         });
        observer.observe(document.body, { childList: true, subtree: true });
});
        setTimeout(function() { observer.disconnect(); }, 10000);
    }
   
    // 立即执行
    tryInsert();
})();

2026年3月27日 (五) 11:20的版本

/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */

// 自动加载 MediaWiki:Footer 页面内容,并插入到每个页面底部

$(document).ready(function() {
    const namespace = mw.config.get('wgNamespaceNumber');
    const action = mw.config.get('wgAction');
    if (namespace !== 0 || action !== 'view') {
        return;
    }
    
    $.get("/index.php?action=raw&title=MediaWiki:Footer")
        .done(function(content) {
            if (content.trim() !== '') {
                $('#mw-content-text').append(
                    '<div class="global-footer">' + content + '</div>'
                );
            }
        });
});